在HTML中插入对象数据

时间:2014-10-31 13:42:24

标签: javascript html json

如何在HTML中列出Javascript对象的结构化内容?

我的对象如下:

var lists = {
"Cars":{"Ford":false,"Ferarri":false},
"Names":{"John":true,"Harry":false},
"Homework":{"Maths":true,"Science":false,"History":true,"English":true}
}

将键打印为标题,将属性+值作为下面的有序列表打印出来会是什么样的?

示例:

汽车

  1. Ford = False
  2. 法拉利=假
  3. 姓名

    1. John = True
    2. Harry = False
    3. 作业

      1. Maths = True
      2. Science = False
      3. 历史=真实
      4. English = True
      5. 我知道我可以通过名称将对象附加到HTML,但是如果对象是动态的,并且密钥不为人所知,那么我该如何进行循环呢?

1 个答案:

答案 0 :(得分:3)

只需循环,创建HTML字符串,然后追加!假设你有一个容器:

<div id="container"></div>

和你的JS

var htmlString = "";
for (var key in lists) {
    htmlString += "<span>" + key + "</span>";
    htmlString += "<ul>";
    for (var item in lists[key]) {
        htmlString += "<li>" + item + " = " + lists[key][item] + "</li>";
    }
    htmlString += "</ul>";
}

document.getElementById("container").innerHTML = htmlString;

工作演示:http://jsfiddle.net/owqt5obp/