私は次のようなjqueryjsonオブジェクトを持っています:
{"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);
}
JSON オブジェクトは、キーと値のペアのようなものです。
この JSON オブジェクト全体が変数であると仮定しdata
、コンテンツを読み取るには、次の手順を実行します。
meta
はobject
異なるデータが含まれているため、読み取りlimit
、next
および使用する必要があるその他のデータなどがありますdata.meta.limit
。
今objects
はarray
別のオブジェクトがあるタイプです。
したがって、読み取りbody
、実行data.objects[0].body
など。