我没有看到使用JQuery Autocomplete插件从我的webservice返回的数据。
我确信这是我的代码的JQuery部分的问题。 (Firebug显示我从我的webservice获取了一个字符串,格式如下所示。)
"[\"Component 1\",\"Component 2\",\"Component 2\",\"Component 3\"]"
(我确实认为可能有2个项目相同,但删除副本没有任何区别。)
我的JQuery代码是......
$('#tags').autocomplete({
source: function (request, response) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "QuickSearch/QuickSearch.asmx/GetDealerships",
data: "{'s':'" + request.term + "'}",
dataType: "json",
async: true,
success: function (data){
response(data.d);
},
error: function (result) {
alert("Due to unexpected errors we were unable to load data");
}
});
},
minLength: 2
});
});
所以有人能告诉我成功的错误:功能吗?
由于
修改
var array = data.split(",");
response(array);
上面的代码几乎可以工作,除了我的下拉框还有“包裹每个元素的符号。我可以编辑它以删除备用字符,但事实上我必须这样做让我怀疑我没有它在某个地方非常正确..
答案 0 :(得分:0)
将此脚本用于成功事件处理程序:
response($.map(data, function (item) {
return { label: item, value: item };
}));