我有一个使用obj = JSON.parse(data)创建的json对象。 “数据”是从网络服务器收到的。我知道对象是正确的,因为我可以将单个变量打印到div或我的列表中。
这是从以下创建的json对象:
[{ “名称”: “南十字龙属”, “基团”: “蜥臀目”, “饮食”: “食肉”, “时期”: “三叠”},{ “名称”: “梁龙”, “基团” : “蜥臀目”, “饮食”: “草食动物”, “时期”: “侏罗纪”},{ “名称”: “剑龙”, “基团”: “鸟臀”, “饮食”: “草食动物”, “时期” : “侏罗纪”},{ “名称”: “暴龙”, “基团”: “蜥臀目”, “饮食”: “食肉”, “时期”: “白垩纪”}]
我想要做的就是把它放到一个网页上显示。
我目前的代码:
function getJson(){$.get(MY URL, function(data) {
// String
//console.dir(data);
// Parse JSON
var obj = JSON.parse(data);
// JSON object
//console.dir(obj);
$('#myList').html("<li>"+obj[0].period+"</li><li>"+obj[2].period+"</li>");
//$('#myList').html("<li>obj[2].period</li>");
});
}
使用Triassic然后Jurrasic成功打印出列表。
我更喜欢在Jquery中这样做,但javascript没问题。
谢谢。
答案 0 :(得分:1)
您没有遍历列表,只是打印出数组中的第0个和第2个元素。尝试:
function getJson(){$.get(MY URL, function(data) {
// String
//console.dir(data);
// Parse JSON
var obj = JSON.parse(data);
// JSON object
//console.dir(obj);
var inner = '';
for(i=0; i < obj.length; i++) {
inner += "<li>"+obj[i].period+"</li>";
}
$('#myList').html(inner);
});
}
我确信使用jQuery有一种更清洁的方式但是应该可以使用
答案 1 :(得分:1)
如果您想要使用jQuery语法,请执行以下操作:
var listElement = '';
$.each(obj, function(index, value) {
listElement += '<li>' + data[obj].period + '</li>';
})
$('#myList').html(listElement);