如何将 JSON 对象内的 JSON 数组传递给 jQuery autocomplete
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
})
}
});
JSFIDDLE http://jsfiddle.net/guest271314/wr1wg5df/
相关文章:
- 需要帮助设置json数组
- 如何使用 node.js 比较两个 json 数组
- 根据id将json数组组合为一个json数组
- 如何创建JSON数组
- 如何将package.json数组传递给grunt.js
- 访问json数组中的对象
- JSON数组数据返回Undefined
- 如何向JSON数组动态添加属性
- 如何从json数组中获取特定值
- 从多维嵌套json数组创建下拉列表
- 在ListView中添加JSON数组中存储的图像-ReactNative
- jquery在json数组中循环
- 将 JSON 数组解析为 JavaScript 数组
- 如何在php中读取没有任何键的JSON数组
- 如何在Jquery中迭代JSON数组
- 如何在cycle js中从JSON数组创建组件
- 如何使用jquery返回php-json数组对象
- JSON数组转换为JS对象数组
- 使用System从C#集合创建JSON数组.网状物剧本序列化
- 使用Underscore.js修改json数组中所选元素的更有效方法