为什么我无法附加到<p>标签?

时间:2016-10-22 22:49:14

标签: javascript

我正在编写ToDo列表webapp的脚本,我正在尝试使用4个文本框的内容来创建ToDo项目的内容。

目前,当我尝试连接表单生成的元素时,出现错误roster.add()

我目前正在使用一个函数来创建我想要附加到ToDo项主体的元素,我相信我从函数中返回一个元素。代码发布在下面。

TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
    at HTMLButtonElement.document.getElementsByClassName.onclick

2 个答案:

答案 0 :(得分:1)

变量p不是项目(HTML“节点”);它是字符串

也就是说,因为你为它分配了一个字符串,使用序列赋值(最后一个值一直返回) - "indent-wrapped"进入className然后className进入{ {1}}。

将项目创建与课程作业分开:

p

var p = document.createElement("P") p.className = "indent-wrapped" roottitle也是如此。它们都以相同的方式分配字符串。

答案 1 :(得分:0)

您可以将字符串Enter a number between 1 and 10: 6 Enter how many rows to of numbers: 4 0 1 2 3 4 5 0 1 2 3 分配给indent-wrapped,如下面的代码段所示。因此,您尝试在字符串而不是节点上调用p。拆分赋值,因此您将首先将节点分配给p,并在下一个语句中设置其类名。对于您尝试创建元素并在同一语句中设置其中一个属性的其他元素(根,标题,正文等)也是如此。

appendChild