3

次のようにネストされた div 構造があります

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

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

    </div>

"a"id asで div の innerText を取得できることはわかっていますdocument.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 に答える