javascript – appendChild不工作

前端之家收集整理的这篇文章主要介绍了javascript – appendChild不工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
HTML
<ul id="datalist">
</ul>

JavaScript的:

function add(content){
   ul=document.getElementsByTagName("ul");
   var li=document.createElement("li");
   li.innerHTML=content;
   ul.appendChild(li);
}

当我调用add,Uncaught TypeError:Object#< NodeList>没有方法’appendChild’被抛出.任何想法为什么?

解决方法

getElementsByTagName()不返回一个元素,它返回一个 NodeList,它是一个类似数组的对象.它基本上意味着你可以使用它作为一个数组.

所以你可以做到:

var ul = document.getElementsByTagName("ul")[0];

但是为什么你不用简单地使用getElementById(),如果该列表有ID呢? ID在整个文档中必须是唯一的,因此此方法只返回一个元素.

var ul = document.getElementById('datalist');

注意:请确保将ul声明为函数的局部变量(add var),除非您在函数之外使用它.

猜你在找的JavaScript相关文章