好的,所以 JQuery 的自动完成小部件让我发疯!
我尝试了多种加载小部件的方法。我目前得到以下信息:
错误:未调用 jQuery15105511000803127266_1353087819681 - parsererror
并且响应值(来自萤火虫)似乎是System.string[]
虽然我不确定它是一个字符串,它的值是System.string[]
还是一个实际的system.string[]
对象。
我只是愚蠢,还是我错过了什么(请善待你对最后一个问题的回答......)?
我的 javascript 是:
$("#clientName").autocomplete({
source: function (request, response) {
$.ajax({
url: "/supplier/apSupplierSearch/",
data: { searchAPName: clientName.value },
dataType: "json",
type: "POST",
success: function (data) {
//response(data);
response($.map(data, function (item) {
return {
label: item.Name,
value: item.Name
}
}))
}
}); // ajax
}, // function [{
scroll: true,
scrollHeight: 600,
minLength: 4
});
我的网络方法是:
[WebMethod]
public string[] apSupplierSearch(string searchAPName)
{
IList<int> selectedPropertyIDs = new List<int>();
string currentRole = UserServices.GetCurrentRole();
Property currentProperty = UserServices.GetCurrentPropety();
List<ApSupplier> suppliers = ApSupplierQueries.GetApSuppliers(searchAPName, selectedPropertyIDs, currentRole, currentProperty);
List<string> supplierList = new List<string>();
foreach (ApSupplier supplier in suppliers)
{
supplierList.Add(supplier.Name);
}
return supplierList.ToArray();
}