Xpath选择元素,两个孩子都包含文本

时间:2018-11-26 11:11:12

标签: javascript xpath

如何选择两个孩子都包含特定文本的元素。

示例:

<div class="line">
     <h1>
          <a>1</a>
     </h1>
     <p>
          <a>2</a>
     </p>
</div>
<div class="line">
     <h1>
          <a>3</a>
     </h1>
     <p>
          <a>4</a>
     </p>
</div>

如何制作一个XPath字符串,搜索类行,然后在其中一个跨度包含3和4的地方选择它

我尝试过

//div[contains(@class, 'line')]

但是我看不到如何选择第一个包含3的孩子,第二个包含4的孩子。

1 个答案:

答案 0 :(得分:-2)

尝试通过两个子节点的确切字符串值选择div节点

//div[contains(@class, 'line') and normalize-space(h1)='3' and normalize-space(p)='4']