我一直试图让它工作几个小时,但看不出我哪里出错了。
我一直在检查 Firebug 的服务器响应,它通过 .asmx Web 服务很好地检索 json 数据。我必须解决的唯一错误是在输入 2 个或更多字符时触发的 firebug 错误: TypeError: c.settings[d].call is not a function
jQuery 代码片段:
$(document).ready(function () {
$("#<%= txtCustomer.ClientID %>").autocomplete({
minLength: 2,
async: true,
source: function(request, response) {
$.ajax({
url: "../Services/AJAXHandler.asmx/GetCustomers",
data: "{'filter':'" + request.term + "'}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
dataFilter: function (data) { return data; },
success: function (data) {
response($.map(data.d, function(item) {
return {
label: item.customerName
};
}));
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
var errorMessage = "Ajax error: " + this.url + " : " + textStatus + " : " + errorThrown + " : " + XMLHttpRequest.statusText + " : " + XMLHttpRequest.status;
if (XMLHttpRequest.status != "0" || errorThrown != "abort")
{
alert(errorMessage);
}
}
});
}
});
如果有人能指出我正确的方向,那就太好了。