3

我有一个嵌套的 div 结构如下

    <div id =a>
      my content
    <div id =a1>
      irrelevant content
    </div>

    <div id= a2>
      irrelevant content
    </div>

    </div>

我知道我可以使用 id "a"as获取 div 的 innerTextdocument.getElementById('a').innerText但这会给我类似的东西, my content irrelevant content irrelevant content但我只想要那个特定 div 中的内容而不是它与嵌套 div 的内容连接。我如何得到它?

4

1 回答 1

2

循环直接子节点并过滤那些所谓的“文本节点”(即它们包含文本,而不是标签)。

var element = document.getElementById('a'),
result = "";
for (var i=0; i<element.childNodes.length; ++i) {
    if (element.childNodes[i].nodeType === 3) {
        result += element.childNodes[i].textContent;
    }
}
于 2013-05-14T09:29:37.313 回答