搜尋

首頁  >  問答  >  主體

javascript - 一個關於InnerText的問題?

我想用InnerText取得某個p節點的文字內容,但是這個節點內部有若干子節點,結果用InnerText會把它的子節點的文字也一起取得到,怎麼解決?

例如:

<p id="p"><p>这不是我想要的<hr /></p>这才是我想要的</p>

我想獲取到的是「這才是我想要的」這部分內容,何解?

迷茫迷茫2707 天前954

全部回覆(1)我來回復

  • 三叔

    三叔2017-07-05 10:59:20

    先用document.getElementById('p').childNodes
    取得到所有子元素,再遍歷nodeType是3的節點(3是文字節點),最後取他的nodeValue值。
    注意這樣寫時

    <p id="p">
        <p>这不是我想要的<hr /></p>这才是我想要的
    </p>
    

    childNodes會取到空的文字節點,要過濾。
    還有innerText存在相容性問題。

    現在只能想到這種方法。

    回覆
    0
  • 取消回覆