2017-09-13 75 views
0

单击按钮时,我有大量html元素动态创建。在JS,就像这样:JS数组:无法执行'节点'上的'appendChild':参数1不是'节点'类型

var elementTVA = document.createElement('p'); 

为了迅速处理这些元素,我决定将它们存储在一个数组,并使用for循环。

for (var i=0 ; i<=tableau.length ; i++) { 
     tableau[i].classList.add('list-element'); 
     newRow.appendChild(tableau[i]); 
    }; 

不过我,当我尝试添加他们

遗漏的类型错误此错误:无法执行“的appendChild”的“节点”:参数1的类型为“节点”的不是。

是因为我将它们存储在数组中吗?

+0

'i

+0

您需要显示填充'tableau'的代码。 –

+0

谢谢(初学者错误-_-) –

回答

1

for循环,你应该使用

for (var i=0; i < tableau.length; i++) { 

你应该检查是否i小于的长度,而不是小于或等于

由于数组起始于0,因此当您访问tableau[ tableau.length ]时,您会得到undefined,因此数组的长度将比最大索引高一个。

相关问题