有这么一个JSON数组,需求是只需要输出每个数组里面的某个值,不需要全部输出来。
var data = [
{
"MachineID":"171914",
"Cost":"13,642.41",
"Currency":"PHP"
},
{
"MachineID":"172233",
"Cost":"1,367.73",
"Currency":"PHP"
},
{
"MachineID":"41116",
"Cost":"2,608.20",
"Currency":"PHP"
},
{
"MachineID":"178077",
"Cost":"1,517.04",
"Currency":"PHP"},
{
"MachineID":"176430",
"Cost":"20,876.72",
"Currency":"PHP"
}
]
假设我们输出全部的值,则按照前面一篇文章说过的jQuery使用each的方法,只需要遍历两次就可以输出,代码如下:
var _html = ''; $.each(data,function(index,obj){ _html +='<h2>'+(index+1) +'</h2><ol>'; $.each(obj,function(key,value){ _html += '<li>'+key+" : "+value+'</li>'; }) _html +='</ol>'; }) $("#content").append(_html);
基于本文只需要每个数组的第一个值,可以使用前文说过的几种输出option的方法的最快第四种
var output = []; $.each(data, function(key,value){ output.push('<li>' + value.MachineID + '</li>'); }); $("ul").html(output.join(''));
或者是前文说过的第五种
var ul = $('ul'); $.each(data,function(i,obj) { $('<li>',{text:obj.MachineID}).appendTo(ul); });
最近花了很多心思在理解和使用JSON上,从一开始的不解和害怕使用,到现在算是入门了,懂得了怎么区分、转换、使用、分析。遇到问题不要逃避,而应该积极寻找解决方法,动手写写代码,多使用国外的网站问答,也许他们的答案能够给你更多的启发和新的思考。
加油!