如何将JSON对象插入无序列表中
-
20-12-2019 - |
题
我有一个我使用obj= json.parse(数据)创建的JSON对象。从Web服务器收到“数据”。我知道该对象是正确的,因为我可以将单个变量从中打印到div或我的列表中。
这是json对象的创建:
[{“名称”:“Staurikosaurus”,“组”:“Saurischia”,“饮食”:“加剧”,“时期”:“Triassic”},{“名字”:“Diplodocus”,“小组”:“Saurischia”,“饮食”:“食草动物”,“时期”:“侏罗纪”},{“姓名”:“Stegosaurus”,“团体”:“奥纳里奇亚”,“饮食”:“食草动物”,“时代”:“侏罗纪”},{“姓名”:“Tyrannosaurus”,“群体”:“Saurischia”,“饮食”:“肉食”,“时期”:“白垩纪”}“
字面上,我想做的就是把它放在一个网页上的一个东西。
我的当前代码:
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>");
});
}
.
这成功用三叠杆菌打印出列表然后jurrasic。
我宁愿在jQuery中这样做,但Javascript还可以。
谢谢。
解决方案
您未迭代列表,只需在阵列中打印出0-Th和第二个元素。尝试:
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有一种清洁的方式,但应该工作
其他提示
如果您要使用jQuery语法,因此如下所示:
var listElement = '';
$.each(obj, function(index, value) {
listElement += '<li>' + data[obj].period + '</li>';
})
$('#myList').html(listElement);
. 不隶属于 StackOverflow