我正在從遠程數據源獲取自動完成功能。這是返回JSON,但它不會填充自動填充框。Ajax自動完成問題
$("#patientName").autocomplete({
source: function(request, response) {
$.ajax({
url: "http://localhost:8080/cs/accountTypeAhead",
dataType: "json",
type: 'POST',
data: { "patientName": $("#patientName").val(),
"requestID": (new Date()).getTime()},
success: function(data) {
var searchInfo = new Array();
for(var key in data)
{
if(typeof data[key] === "object") {
for(var i = 0; i < data[key].length; i++)
{
searchInfo.push(data[key]);
}//end for loop
}//end if
else if(key == "requestID")
{
if (data.requestID < $("#requestID").val())
{ return false;}
else
{
$("#requestID").val(data.requestID);
}
}//end if/else
}//end for loop
return searchInfo;
}
});
},
minLength: 1,
});
我從控制檯輸出正是我所期待的。我認爲它有一些到期歸還數組。
那你是怎麼得到的價值呢?它正在返回正確的值。然後你看看[JQuery UI]上的例子(http://jqueryui.com/demos/autocomplete/remote-jsonp.html)它是相似的。 –
@David Nuckols:編輯我的答案 –