.appendChild不是一个函数

时间:2016-03-05 18:45:40

标签: javascript dom parent-child

我试图向DOM添加一些元素,但FireBug控制台一直警告我{1}}这样的错误所以这里是js:

TypeError: el.appendChild is not a function; el.appendChild(para);

发现了一些常见的问题,但无法找到解决我的方法。

1 个答案:

答案 0 :(得分:3)

document.getElementsByClassName
                   ^

返回元素的集合。您需要先从集合中选择一个元素,然后才能将子项附加到该元素。

如果您知道完全,则可以使用:

var el = document.getElementsByClassName("toBeSelected")[0];

由于不清楚您是否希望将节点添加到给定类的所有元素中,因此我将明确假设这是您期望的。

elems = document.getElementsByClassName('toBeSelected');
for (i = 0; i < elems.length; i++) {
  elem = elems[i];
  tr = document.createElement('tr');
  tr.textContent = data.filename;
  elem.appendChild(tr);
}

此表格非常详细。如果你正在使用jQuery,那么写起来要简单得多:

$('<tr>').text(data.filename).appendTo('.toBeSelected');