我有一个使用 obj = JSON.parse(data) 创建的 json 对象。 “数据”是从网络服务器收到的。我知道该对象是正确的,因为我可以将其中的单个变量打印到 div 或我的列表中。
这是 json 对象的创建来源:
[{"name":"十字龙","group":"蜥臀目","diet":"食肉动物","period":"三叠纪"},{"name":"梁龙","group":"蜥臀目","饮食":"草食动物","period":"侏罗纪"},{"name":"剑龙","group":"鸟臀目","diet":"草食动物","period":"侏罗纪"},{"name":"暴龙","group":"蜥臀目","diet":"食肉动物","period":"白垩纪"}]
实际上我想做的就是将其放入 a 中以显示在网页上。
我当前的代码:
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>");
});
}
这成功地打印出了三叠纪和侏罗纪的列表。
我更喜欢在 Jquery 中执行此操作,但 javascript 也可以。
谢谢。
最佳答案
您没有迭代列表,只是打印出数组中的第 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,但这应该可行
关于javascript - 如何将json对象插入到无序列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23000489/