Javascript 易于自动完成,引用深度嵌套的值
我正在使用一个名为“”的自动完成程序 这个程序运行得很好,但是我对如何引用深度嵌套的节点集感到困惑。运行显示的javascript使用一个标记为“listlocation”的属性,该属性提取嵌套在JSON提要根之外的值 然而,当尝试从“player”数据集中提取数据(例如ID)时,我没有成功(开发人员工具告诉我我没有接收数据)。我试过“player”、“playerstatsentry.player”、“cumulativeplayerstats.playerstatsentry”和其他版本的 当我使用一个JSON提要,其中值位于根目录或上一层(根据)时,该特性工作得非常好 引用播放器数组以提取ID值的最佳方法是什么 JSON JAVASCRIPTJavascript 易于自动完成,引用深度嵌套的值,javascript,jquery,json,autocomplete,Javascript,Jquery,Json,Autocomplete,我正在使用一个名为“”的自动完成程序 这个程序运行得很好,但是我对如何引用深度嵌套的节点集感到困惑。运行显示的javascript使用一个标记为“listlocation”的属性,该属性提取嵌套在JSON提要根之外的值 然而,当尝试从“player”数据集中提取数据(例如ID)时,我没有成功(开发人员工具告诉我我没有接收数据)。我试过“player”、“playerstatsentry.player”、“cumulativeplayerstats.playerstatsentry”和其他版本的
var options = {
url: "assets/data.json",
listLocation: "cumulativeplayerstats.playerstatsentry.player",
getValue: "LastName"
list: {
match: {
enabled: true
}
}
};
$("#provider-json").easyAutocomplete(options);
该插件需要一个
对象
的集合和一个属性
名称,该名称将用作自动完成帮助。您需要在逻辑上重新构造data.json
文件:
案例1:当JSON
结构如下时
{
"cumulativeplayerstats": {
"lastUpdatedOn": "2018-02-13 1:59:59 PM",
"playerstatsentry": [
{
"player": {
"ID": "5106"
},
"LastName": "Test 1"
},
{
"player": {
"ID": "5107"
},
"LastName": "Test 2"
},
{
"player": {
"ID": "5108"
},
"LastName": "Test 3"
}
]
}
}
而不是将自动完成配置用作:
<input id="provider-json" />
<script>
var options = {
url: "assets/data.json",
listLocation: function(data) {
return data.cumulativeplayerstats.playerstatsentry;
},
getValue: "LastName",
list: {
match: {
enabled: true
}
}
};
$("#provider-json").easyAutocomplete(options);
将自动完成代码用作:
var options = {
url: "assets/data.json",
listLocation: function(data) {
return data.cumulativeplayerstats.playerstatsentry;
},
getValue: function(item) {
return item.player.LastName;
},
list: {
match: {
enabled: true
}
}
};
$("#provider-json").easyAutocomplete(options);
希望这有帮助 插件需要一组
对象
和一个属性
名称,它们将用作自动完成帮助。您需要在逻辑上重新构造data.json
文件:
案例1:当JSON
结构如下时
{
"cumulativeplayerstats": {
"lastUpdatedOn": "2018-02-13 1:59:59 PM",
"playerstatsentry": [
{
"player": {
"ID": "5106"
},
"LastName": "Test 1"
},
{
"player": {
"ID": "5107"
},
"LastName": "Test 2"
},
{
"player": {
"ID": "5108"
},
"LastName": "Test 3"
}
]
}
}
而不是将自动完成配置用作:
<input id="provider-json" />
<script>
var options = {
url: "assets/data.json",
listLocation: function(data) {
return data.cumulativeplayerstats.playerstatsentry;
},
getValue: "LastName",
list: {
match: {
enabled: true
}
}
};
$("#provider-json").easyAutocomplete(options);
将自动完成代码用作:
var options = {
url: "assets/data.json",
listLocation: function(data) {
return data.cumulativeplayerstats.playerstatsentry;
},
getValue: function(item) {
return item.player.LastName;
},
list: {
match: {
enabled: true
}
}
};
$("#provider-json").easyAutocomplete(options);
希望这有帮助 在
Javascript
中,您已经为LastName
编写了代码,问题是关于ID
的选择。总之,我为LastName
selection编写了答案,您也可以为ID
属性编写同样的答案。希望能有帮助!!如果答案有帮助,你可以投票接受。否则,如果有任何问题,请告诉我。在Javascript
中,您已经为LastName
编写了代码,问题是关于ID
的选择。总之,我为LastName
selection编写了答案,您也可以为ID
属性编写同样的答案。希望能有帮助!!如果答案有帮助,你可以投票接受。否则,如果有任何问题,请告诉我。