원격 데이터 소스에서 자동 완성을 가져오고 있습니다. 그것은 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 : 편집 내 대답 –