我有以下 html:
<td>
<div>
Text I Want<span class="note-comment">Text I Do Not Want</span>
</div>
</td>
此 HTML 不是我的,因此无法更改。是的,我知道将“我想要的文本”包装在一个跨度中是理想的,但它不是我的。
使用 CSS 选择器,我需要获取“我想要的文本”,而不选择跨度节点。我尝试过 :first-child
但没有成功。
如果使用 CSS 选择器绝对不可能做到这一点,有没有办法使用 XPath 来做到这一点(我假设使用 text()
)?
最佳答案
用CSS选择器是绝对不可能做到的。 CSS 选择器很少选择文本(::first-line
和 ::first-letter
伪元素除外)。
为什么不选择 <div>
并获取其 firstChild
?无论如何,XPath 会类似于 //td/div/text()[1]
.
关于html - 仅选择 div 内部的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19017822/