var localPlaceholder = document.getElementById('localFiles');
for (i=0; i<entries.length; i++) {
var newList = document.createElement( "li" );
newList.nodeValue = entries[i].name;
localPlacholder.appendChild(newList);
}
这有什么意义吗?由于某种原因,我没有看到任何添加 - 虽然条目[i] .name DOES返回值,如果我用警告框调试它。
编辑:localFiles是ul
答案 0 :(得分:1)
而不是:
newList.nodeValue = entries[i].name;
尝试:
newList.innerHTML = entries[i].name;
答案 1 :(得分:1)
你可以简单地说:
var localPlaceholder = document.getElementById('localFiles');
var newList = '';
for (i = 0; i < entries.length; i++) {
newList += '<li>' + entries[i].name + '</li>';
}
localPlaceholder.innerHTML += newList;
较少的DOM操作实例。
答案 2 :(得分:0)
除非是文本节点(LI不是文本节点),否则无法使用方法nodeValue直接向html元素添加文本。您需要创建一个文本节点,然后将其添加到html元素中,否则,只需使用innerHTML即可。
http://reference.sitepoint.com/javascript/Node/nodeValue
您可以尝试更改
newList.nodeValue = entries[i].name;
到
newList.appendChild(document.createTextNode(entries[i].name);