我有一个返回字符串列表的web服务。我试图将它作为我的自动提示文本框的数据源。以下是我的webservice返回的内容
<ArrayOfString>
<string>Air Pollutants</string>
<string>Air Facilities</string>
<string>Air Emissions</string>
<string>Air Pollution</string>
<string>Air Quality Monitoring</string>
<string>Air Piracy</string>
</ArrayOfString>这是我使用ajax的jquery。
$(document).ready(function () {
$('#<%=txt_search_extantdata.ClientID%>').autocomplete({
source: function (request, response) {
$.ajax({ type: 'POST',
url: "/_layouts/Extantlibrarywebservice/getdata.asmx/GetSearchData",
data: { 'src': $("#<%=txt_search_extantdata.ClientID%>").val() },
dataType: "xml",
success: function (xmlResponse) {
response($(xmlResponse).map(function () {
return { value: $(this).text() };
}))
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
},
minLength: 2
});
});我当前获取的输出就像一个带有所有附加条件的项目
Air PollutantsAir FacilitiesAir EmissionsAir Pollution Air Quality MonitoringAir Piracy我想在out中显示的是一行字符串。
Air Pollutants
AirFacilities
Air Emissions
Air Pollution
Air Quality Monitoring
Air Piracy我不知道我做错了什么
发布于 2014-12-06 12:51:20
好的,您的成功回调应该是这样的:
success: function (xmlResponse) {
response($("string", xmlResponse).map(function () {
return {
value: $(this).text()
};
}));
},因为您在这里获得响应,其中包含ArrayofStrings中字符串的xml节点,所以要在响应中映射的选择器应该如下所示
$("string", xmlResponse)希望能帮上忙!!
https://stackoverflow.com/questions/27328242
复制相似问题