创建xPath以选择<p> <h3>在其前面的<p>元素</h3>

时间:2014-11-28 01:27:13

标签: jquery html xpath

我正在寻找创建一个xpath,它将在下面结构中包含的页面上定位特定的h3标题,然后选择之后的兄弟p标记:

<ul>
  <li> Title A
    <h3> Message A
    <p> Number A
  </li>
  <li> Title B
    <h3> Message B
    <p> Number B
  </li>
</ul>

如果前面的元素是h3并匹配特定的字符串,我只需要选择p元素。

到目前为止我已经想出了这个:

/ul/li/h3[.="TELEPHONE:"]/following-sibling::text()[1]

感谢任何可能无法正常工作的建议。

1 个答案:

答案 0 :(得分:0)

您需要关闭<h3>代码和<p>代码

如果我像那样重写你的例子

<ul>
  <li>Title A
    <h3>Message A</h3>
    <p>Number A</p>
  </li>
  <li>Title B
    <h3>Message B</h3>
    <p>Number B</p>
  </li>
  <li>Title C
    <h3>Message C</h3>
    <p>Number C</p>
  </li>
</ul>

我可以搜索你需要的东西

//li/h3[contains(text(), 'Message A')]/following-sibling::p