【发布时间】:2012-08-11 02:51:17
【问题描述】:
我有这个数组:
var employees = [
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName": "Jones" }
];
我想将整个数组打印为 html 表格。我将如何做到这一点?
我试过了,但只能得到最终的打印名称:
<!DOCTYPE html>
<html>
<body>
<h2>Create Object from JSON String</h2>
<p>
First Name: <span id="fname"></span><br />
Last Name: <span id="lname"></span><br />
</p>
<script type="text/javascript">
var txt = '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';
var obj = eval ("(" + txt + ")");
for (i=0; i<txt.length; i++){
document.getElementById("fname").innerHTML=obj.employees[i].firstName
document.getElementById("lname").innerHTML=obj.employees[i].lastName
}
</script>
</body>
</html>
【问题讨论】:
-
您遍历数组并相应地创建 DOM 元素,或者您使用模板引擎...
-
为什么要直接在代码中创建一个 JSON 字符串,然后对其进行评估?如果你想要一张桌子,为什么要使用
<span>元素? -
@Mike:如果您正在使用库,请下次指出。您的问题旨在对未来的读者有用。如果没有迹象表明问题中使用了 jQuery,则 jQuery 答案没有意义。这并不意味着只为您提供一次性本地化帮助。 StackOverflow 旨在创建对社区未来几年有用的帖子。
标签: javascript arrays html-table