我正在编写一个检索列表的jQuery
ajax
函数,我需要遍历此list
。
这是我用来序列化列表的代码:
JavaScriptSerializer().Serialize(listData);
以下是检索数据后的json数据:
jsonData = "[{\"draggable\":false,\"icon\":null,\"latitude\":-41.22766,\"longitude\":174.812761,\"title\":\"LocationMarker1 74 Title\"},{\"draggable\":false,\"icon\":null,\"latitude\":-41.228029,\"longitude\":174.812926,\"title\":\"LocationMarker2 80 Title\"}]"
如何遍历此json列表以便我可以检索单个值?
我尝试了以下内容:
success: function (mapMarkerData) {
for (var MapMarker in mapMarkerData) {
alert(MapMarker["latitude"]);
alert(MapMarker["longitude"]);
alert(MapMarker["title"]);
alert(MapMarker["draggable"]);
}
}
对于每个提醒,我收到以下消息:
未定义
提前致谢
答案 0 :(得分:1)
var jsonData = "[{\"draggable\":false,\"icon\":null,\"latitude\":-41.22766,\"longitude\":174.812761,\"title\":\"LocationMarker1 74 Title\"},{\"draggable\":false,\"icon\":null,\"latitude\":-41.228029,\"longitude\":174.812926,\"title\":\"LocationMarker2 80 Title\"}]"
jsonData = JSON.parse(jsonData) //Parse it to make object
jsonData.forEach(function(val){
alert(val.draggable);
.
.
.
alert(val.title);
})
答案 1 :(得分:0)
这是一个可能的解决方案。
var jsonData = "[{\"draggable\":false,\"icon\":null,\"latitude\":-41.22766,\"longitude\":174.812761,\"title\":\"LocationMarker1 74 Title\"},{\"draggable\":false,\"icon\":null,\"latitude\":-41.228029,\"longitude\":174.812926,\"title\":\"LocationMarker2 80 Title\"}]";
var obj = JSON.parse(jsonData);
$.each(obj, function(i, row){
alert(row.draggable);
});

<script src="https://cdnjs.cloudflare.com/ajax/libs/json2/20140204/json2.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
答案 2 :(得分:0)
var x = $.parseJSON(jsonData);
for(var o in x){
console.log(x[o].latitude);
console.log(x[o].longitude);
}
答案 3 :(得分:0)
解决方案就像
var data = Json.Parse(jsonData); for (int i=0; i< data.length; i++){ alert(data[i]["latitude"]); }
答案 4 :(得分:0)
success: function (mapMarkerData) {
for (i in mapMarkerData) {
alert(mapMarkerData[i].latitude);
alert(mapMarkerData[i].longitude);
alert(mapMarkerData[i].title);
alert(mapMarkerData[i].draggable);
}
}
答案 5 :(得分:0)
您可以使用此代码:
var jsonData = "[{\"draggable\":false,\"icon\":null,\"latitude\":-41.22766,\"longitude\":174.812761,\"title\":\"LocationMarker1 74 Title\"},{\"draggable\":false,\"icon\":null,\"latitude\":-41.228029,\"longitude\":174.812926,\"title\":\"LocationMarker2 80 Title\"}]";
var jsonObj = JSON.parse(jsonData);
for(var index in jsonObj)
alert(jsonObj[index].title);