我正在尝试使用JQuery Typeahead插件在本地JSON文件中调用嵌套值。
我有以下使用typeahead插件:
$('#country_v1-query').typeahead({
order: "desc",
emptyTemplate: 'No result for "{{query}}"',
source: {
data: {
url: ["/json/test.json", "data.country"]
},
},
callback: {
onInit: function (node) {
console.log('Typeahead Initiated on ' + node.selector);
},
onSearch: function (node, query) {
//console.log(query);
}
}
});
JSON文件是:
{
data:
{
"country":
[
"AfghanisTan",
"Albania",
"Algeria",
"Andorra",
"Angola",
"Antigua and Barbuda",
"Argentina",
"Armenia",
"Australia",
"Austria",
"Azerbaijan"
]
}
}
我想从数组中检索'country'值。在Jquery中具有更好专业知识的人能否强调最佳方法?
此致 Ĵ
答案 0 :(得分:0)
我拿了" url"参数超出数据:{}对象并删除了数据对象:
source: {
url: ["/json/test.json", "data.country"]
},
此外,您必须在“数据”周围添加双引号。 json中的对象:
"data": { ... }
如果你还有问题,我会把它全部放在一起。
完整的jquery代码:
$('#country_v1-query').typeahead({
order: "desc",
emptyTemplate: 'No result for "{{query}}"',
source: {
url: ["/json/test.json", "data.country"]
},
callback: {
onInit: function (node) {
console.log('Typeahead Initiated on ' + node.selector);
},
onSearch: function (node, query) {
//console.log(query);
}
}
});
完整的JSON代码:
{
"data":
{
"country":
[
"AfghanisTan",
"Albania",
"Algeria",
"Andorra",
"Angola",
"Antigua and Barbuda",
"Argentina",
"Armenia",
"Australia",
"Austria",
"Azerbaijan"
]
}
}