[英]Looping Over JSON Data with jQuery
我在Coldfusion中工作,但是在這種情況下,沒關系。
我正在檢索一些json格式的數據(請參見下文),我只需要名稱(用於自動完成表單字段)。 我需要其他數據,這就是為什么要在此處包含其他數據的原因,但是如果我能得到拔出名稱的幫助,我想我可以管理表單中的其他信息。
我遇到的問題是我的自動完成功能沒有填充json數據返回的名稱值。 我知道這與引用值的方式有關,但我不知道細分的位置。
這就是我的成功功能:
var options = '';
for (var i = 0; i < j.features.length; i++){
options += '<option value="' + j.features[i].attributes.name + '">' + j.features[i].attributes.name+ '</option>';
}
這是我在控制台日志窗口中看到的-json格式的數據-
{
"displayFieldName": "name",
"fieldAliases": {
"name": "name"
},
"geometryType": "esriGeometryPoint",
"spatialReference": {
"wkid": 102100
},
"fields": [
{
"name": "name",
"type": "esriFieldTypeString",
"alias": "name",
"length": 150
}
],
"features": [
{
"attributes": {
"name": "Sheltering A"
},
"geometry": {
"x": -8614890.23598794,
"y": 4526897.651595688
}
},
{
"attributes": {
"name": "Sheltering L"
},
"geometry": {
"x": -8644978.888800403,
"y": 4504316.305944032
}
}
]
}
嘗試這個,
在這個包含字典數組的數據中,在這種情況下,我取了data[0]
您可以使用data.length找出長度,然后獲取data[i]
。
data = [{
"displayFieldName": "name",
"fieldAliases": {
"name": "name"
},
"geometryType": "esriGeometryPoint",
"spatialReference": {
"wkid": 102100
},
"fields": [
{
"name": "name",
"type": "esriFieldTypeString",
"alias": "name",
"length": 150
}
],
"features": [
{
"attributes": {
"name": "Sheltering A"
},
"geometry": {
"x": -8614890.23598794,
"y": 4526897.651595688
}
},
{
"attributes": {
"name": "Sheltering L"
},
"geometry": {
"x": -8644978.888800403,
"y": 4504316.305944032
}
}
]
}]
var options = '';
for (var i = 0; i < data[0]['features'].length; i++){
options += '<option value="' +data[0]['features'][i].attributes.name + '">' +data[0]['features'][i].attributes.name+ '</option>';
}
alert(options)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.