[英]Get text from p, not including span values, using Document.querySelector
我有這個元素結構。
<p>
<span class="ts-aria-only">
Departure
</span>
RUH
<span class="ts-aria-only"> Riyadh</span>
</p>
我正在嘗試獲取文本RUH
,但使用innerText
將返回整個文本,包括<span>
中的值。
SO上發布的一些答案使用ajax,這不適用於我的用例。
它是一個文本節點,因此不能用查詢字符串選擇。 您必須從其父元素開始並訪問適當的childNodes
索引:
console.log( document.querySelector('p').childNodes[2].textContent.trim() );
<p> <span class="ts-aria-only"> Departure </span> RUH <span class="ts-aria-only"> Riyadh</span> </p>
這應該工作
Array.from(document.querySelector('p').childNodes).reduce((a,b) => a += b.nodeType==3 ? b.textContent.trim() : '' ,'')
基本上你需要檢查每個 childNode 是否是 textNode (nodeType==3) 然后你可以隨心所欲地使用它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.