[英]How to pass JSON Array inside JSON object to jQuery autocomplete
我正在使用jQuery自動完成功能以通過Ajax調用接收特定數據。 我從Ajax調用接收的數據是一個JSON對象,其中包含一個JSON數組。 我需要將這個json數組的每個結果顯示為自動完成的搜索結果。格式如下所示:
{
"returnCode":"success",
"status":"success",
"searchResults" :[{"val":"123"},{"val":"456"},{"val":"789"}]
}
現在,我需要在自動完成下拉列表中顯示123 456和789。 在formatItem和formatResult中嘗試了一些代碼,但似乎沒有達到目的。
formatItem: function(row,i,max) {
var returnObject = eval("(" + row + ")");
var searchResults = returnObject.searchResults;
if(searchResults.length>0){
for(i=1; i<searchResults.length; i++){
// What to do here?
}
}
嘗試
var cache = {};
elem.autocomplete({
minLength: 2,
source: function(request, response) {
var term = request.term;
if (!!cache[term]) {
response(cache[term][0]);
return
};
cache[term] = [];
$.getJSON("/path/to/json/")
.then(function success(data) {
var res = $.map(data.searchResults, function(val) {
return val.val
});
cache[term].push(res);
response(res)
}, function error(jqxhr, textStatus, errorThrown) {
console.log(textStatus, errorThrown) // log `$.ajax` errors
})
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.