首页 > 解决方案 > 如何使用 JS 和 DOM 创建元素、设置属性、使用 innerHTML 和 appendChild

问题描述

我正在用 HTML/JS 编写一个示例程序,以演示创建用户定义对象(属性/值)的数组、创建元素、使用 innerHTML 从对象数组添加数据,然后附加新填充的元素以使用打印它附加孩子();

出于某种原因,运行程序除了我硬编码为调试之外没有提供任何输出。鉴于语言,查看源代码也不是很有帮助。

请原谅我这个简单的问题,我是 JS 的新手,并且花了很多时间阅读许多资源 - 我觉得我可能遗漏了一些小东西。

谢谢!!

<title>
This is my title.
</title>

<body>
<p>xXx<br/></p>
<script>

var array = new Array();

var thing1 = {
property: "value-1"
};

        var thing2 = {
        property: "value-2"
        };


        array.push(thing1);
        array.push(thing2);

        for (index = 0; index < array.length; ++index) {

            test_el = document.createElement("p");

            test_el.innerHTML(array[index].property);

            document.body.appendChild(test_el);

        };
        //I wish to print 'value' text into the body from my object, that is all

</script>
</body>

标签: javascripthtmldominnerhtmlappendchild

解决方案


您的错误似乎与innerHTML,那不是一个函数,所以你应该把那个值等于什么。我已更正您的代码,以便您查看结果。

var array = new Array();
var thing1 = {
  property: "value-1"
};
var thing2 = {
  property: "value-2"
};

array.push(thing1);
array.push(thing2);

for (index = 0; index < array.length; ++index) {
  test_el = document.createElement('p');

  test_el.innerHTML = array[index].property;

  document.body.appendChild(test_el);
};
<title>
  This is my title.
</title>

<body>
  <p>xXx<br/></p>
</body>


推荐阅读