簡體   English   中英

使用jQuery遍歷JSON數據

[英]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)

更新: http //jsfiddle.net/dhana36/6Y68N/1/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM