我有一个 jquery json 对象,例如:
{"meta":{"limit":20,"next":null,"offset":0,"previous":null,"total_count":2},
"objects":[
{"body":"Body 1","date":"2013-01-15},
{"body":"Body 2","date":"2013-02-25}
]}
我想显示循环数据:
body 1, date
body 2, date
试试这个
var data= "yourjson";
$.each(data.objects,function(i,v){
alert(v.body);
alert(v.date);
});
不得不纠正 json 中的一些问题 .. 就像丢失了"
......所以请检查小提琴。
首先,您的 JSON 无效。日期后缺少括号。这是一个有效的 JSON:
var json = {"meta":{"limit":20,"next":null,"offset":0,"previous":null,"total_count":2},
"objects":[
{"body":"Body 1","date":"2013-01-15"},
{"body":"Body 2","date":"2013-02-25"}
]};
请注意 '2013-01-15' 和 '2013-02-25' 之后的 " 符号。
您可以使用JQuery 的 .each()显示“正文”和“日期” :
$.each(json.objects, function (index, obj) {
console.log(obj.body + " " + obj.date);
});
您需要先修复您的 json,因为它是无效的,因为您没有使用 "
{
"meta": {
"limit": 20,
"next": null,
"offset": 0,
"previous": null,
"total_count": 2
},
"objects": [
{
"body": "Body 1",
"date": "2013-01-15"
},
{
"body": "Body2",
"date": "2013-02-25"
}
]
}
那么这样的事情应该可以工作
$.each(data.objects[0],function(i,v){
alert(v.body+" - "+v.date);
}
var data = {"meta":{"limit":20,"next":null,"offset":0,"previous":null,"total_count":2},
"objects":[
{"body":"Body 1","date":"2013-01-15"},
{"body":"Body 2","date":"2013-02-25"}
]};
for(var i = 0; i < data.objects.length; i++){
alert(data.objects[i].body);
alert(data.objects[i].date);
}
JSON 对象就像键值对。
假设整个 JSON 对象在变量中,data
然后要读取内容,请执行以下操作。
meta
是一个object
包含不同的数据,所以要阅读limit
,next
其他的你必须使用data.meta.limit
等等。
现在objects
是array
其中有不同对象的类型。
所以要读取body
,执行data.objects[0].body
等等。