如何用jQuery解析多个json?
2011-07-27
5750
我知道如何使用 jquery 解析简单的 json。
json
{
"Symbol": "AAL.L",
"Name": "ANGLO AMERICAN",
"Last": "3061.50",
"Date": "7/26/2011",
"Time": "11:35am",
"Change": "+35.00(+1.16%)",
"High": "3087.00",
"Low": "3047.00",
"Volume": "3160820",
"Bid": "3061.50",
"Ask": "3062.50",
"PercentChange": "+1.16%"
}
jquery
$.getJSON("1.json", function(data) {
$("div").html("<p>Symbol="+data.Symbol+" Time="+data.Time+" Bid="+data.Bid+"</p>");
});
但是,现在我有一个像这样的 json 文件:
[
{
"Symbol": "AAL.L",
"Name": "ANGLO AMERICAN",
"Last": "3061.50",
"Date": "7/26/2011",
"Time": "11:35am",
"Change": "+35.00(+1.16%)",
"High": "3087.00",
"Low": "3047.00",
"Volume": "3160820",
"Bid": "3061.50",
"Ask": "3062.50",
"PercentChange": "+1.16%"
},
{
"Symbol": "AAL.L",
"Name": "ANGLO AMERICAN",
"Last": "3061.50",
"Date": "7/26/2011",
"Time": "11:35am",
"Change": "+35.00(+1.16%)",
"High": "3087.00",
"Low": "3047.00",
"Volume": "3160820",
"Bid": "3061.50",
"Ask": "3062.50",
"PercentChange": "+1.16%"
},
{
"Symbol": "AAL.L",
"Name": "ANGLO AMERICAN",
"Last": "3061.50",
"Date": "7/26/2011",
"Time": "11:35am",
"Change": "+35.00(+1.16%)",
"High": "3087.00",
"Low": "3047.00",
"Volume": "3160820",
"Bid": "3061.50",
"Ask": "3062.50",
"PercentChange": "+1.16%"
}
]
我不能用那种方式来解析。结果是“未定义”。 我该如何解析它。此外,我想要的结果是这样的:
Symbol = [num, num, num], Time = [num, num, num], Bid = [num, num, num]
有人能告诉我怎么做吗? 非常感谢!!!
3个回答
$.getJSON("1.json", function(data) {
var i = 0, dataSize = data.length, html = '';
for(i; i < dataSize; i++){
html += "<p>Symbol="+data[i].Symbol+" Time="+data[i].Time+" Bid="+data[i].Bid+"</p>";
}
$("div").html(html);
});
编辑
根据@Robert Koritnik 的评论,“ 而不是单个对象 [...] [你] 得到的是一个对象数组 [...] [你] 必须访问 。”
Shef
2011-07-27
[]
表示数组,因此您需要通过键访问项目,例如
data [0]
。您可以使用或
$。每个()
。
415396211
如果要重组结果,则必须在相同的时尚并创建了一个新的结构。 id举一个例子,但我不明白你要去哪里
[num,num,num]
....
prodigitalson
2011-07-27
只需使用迭代器
data[0].Symbol
等等
BonyT
2011-07-27