javascript - 如何获取特定 div 中的文本,只避免嵌套 div 中的文本?

标签 javascript html text get

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

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

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

    </div>

我知道我可以获取 ID 为 "a" 的 div 的 innerText 作为 document.getElementById('a').innerText 但这会给我类似的东西 my content irrelevant content irrelevant content 但我只想要该特定 div 中的内容,而不是将其与嵌套 div 的内容连接起来。我如何获取它?

最佳答案

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

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;
    }
}

关于javascript - 如何获取特定 div 中的文本,只避免嵌套 div 中的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16539497/

相关文章:

HTML/CSS 问题

javascript - GWT JSON跨站请求失败

javascript - 当用户单击时,如何阻止我的文本在数组中循环?

javascript - 使用 jQuery 从单个 HTML 列表进行实时搜索和排序

javascript - 如何在dojo中模拟无模式窗口对话框,以便我们可以打开多个窗口 Pane

html - Flexbox:如何创建我的缩略图以跨越 100% 的容器宽度?

javascript - 如何使我的 div 在调整大小处理程序 dragg 上调整大小?

mysql - 在 TEXT 数据类型 mysql 中连接一个字符串

java - 从文本文件中读取和拆分整数以加在一起?

c++ - 如何交换文本文件中的行?