对于以下 HTML:
<td class="td1">
<div class="dv1">
LINE_ONE<br>
LINE_TWO<br>
LINE_THREE<br>
</div>
</td>
我们可以将 LINE_ONE 与此 xpath 匹配 -->//td[@class='td1']/div[@class='dv1' and contains(text(),' LINE_ONE')]。
我们无法将 LINE_TWO 与此 xpath 匹配 -->//td[@class='td1']/div[@class='dv1' and contains(text(),' LINE_TWO')]。
BR标签正在运行干扰。 Selenium IDE 的“选择”功能可以获取 DIV 标记 xpath,但无法更深入地了解其包含的文本。
有什么建议吗?
最佳答案
只需将 text()
替换为 .
:
//td[@class='td1']/div[@class='dv1' and contains(.,'LINE_TWO')]
虽然text()
在此特定使用场景中仅返回第一个后代文本节点,但.
返回所有后代文本节点的串联
关于selenium - Selenium IDE 中的 XPATH : Matching text in a <td> tag that contains <br> tags,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25948206/