return空document.getElementsByTagName

return null document.getElementsByTagName

我的网页中有这样一个简单的 ul 元素:

<div id="JQueryFTD_Demo" class="demo"><ul class="jqueryFileTree" style="">
    <li class="directory collapsed"><a href="#" rel="/SampleFolder/A/">A</a></li>
    <li class="directory collapsed"><a href="#" rel="/SampleFolder/B/">B</a></li>
    <li class="directory collapsed"><a href="#" rel="/SampleFolder/C/">C</a></li>
    <li class="directory collapsed"><a href="#" rel="/SampleFolder/D/">D</a></li>
    <li class="file ext_accdb"><a href="#" rel="/SampleFolder/SampleDBFile.accdb">SampleDBFile.accdb</a></li>
    <li class="file ext_txt"><a href="#" rel="/SampleFolder/SomeText.txt">SomeText.txt</a></li>
</ul></div>

我尝试通过 javascript 在其中找到标签:

var x = document.getElementsByTagName("a");
return x.textContent;

我的 return 值始终为空, 你能帮帮我吗?

谢谢。

问题很简单... getElementsByTagname returns 类似于数组的集合。

您必须迭代集合才能与每个元素实例的属性交互

是的,这是因为 getElementsByTagName return 是一个节点列表,您不能 return 没有函数

的值

您必须遍历节点列表才能获取每个节点的内容

var x = document.getElementsByTagName("a");

for(var i = 0; i < x.length; i++) {
    console.log(x[i].textContent);
}