繁体   English   中英

获取JSON数组中的特定对象

[英]Get specific object in JSON array

我正在尝试从网络上托管的JSON文件访问数据。 JSON的格式如下:

{"markers":[ 
    { 
    "latitude":57.7973333, 
    "longitude":12.0502107, 
    "title":"Angered", 
    "content":"Representing :)" 
    },

    { 
    "latitude":57.6969943, 
    "longitude":11.9865, 
    "title":"Gothenburg", 
    "content":"Swedens second largest city" 
    } 
]
"markersupdate": []
}

我的目标是从对象中获取数据,例如纬度和经度。 我尝试了以下代码:

$.ajax({
        type: "GET",
        url: 'URL TO MY JSON',
        dataType: "json",
        success: function (data) {
            if (data.length !== 0) {
                //Here I tried using data.markers istead of data, but it did not seem to work
                $.each( data, function (marker, data) {
                      //Here I want to be able to access e.g. data.longitude
                });
            }

        },

    });

问题似乎是它没有正确导入数据。

我该如何解决?

谢谢

确保您正在遍历数组的markers属性。 因此,请调整if条件以及要迭代的对象:

success: function (data) {
    if (data.markers.length !== 0) {
        $.each(data.markers, function (index, marker) {
            alert(marker.longitude);
        });
    }
}

还要注意,传递给$.each函数的回调的第一个参数是数组中元素的索引,第二个参数是元素本身。 或者,您可以使用this来访问要迭代的当前元素:

$.each(data.markers, function () {
    alert(this.longitude);
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM