首页 > 解决方案 > 如何构造一个条件匹配前一个兄弟的孩子的 XPATH

问题描述

<a>仅当前<li>面的文本值为LINE 2时,我才需要选择元素

    <html>
 <div>
  <label>LABEL 1</label>
   <div>
    <ul>
     <li>LINE ITEM 1</li>
    </ul>
   </div>
   <div>
     <div>
       <a>Edit</a>
     </div>
   </div>
 </div>
 <div>
  <label>LABEL 2</label>
   <div>
    <ul>
     <li>LINE ITEM 2</li>
    </ul>
   </div>
   <div>
     <div>
       <a>Edit</a>
     </div>
   </div>
 </div>
</html>

在上面的 HTML 文档中,实际数量可能会根据设计更改而变化,保持不变的是行项目的值<li>

我想要一个 XPATH 查询,它将立即在值为LINE ITEM 2的行项目之后获取编辑

我已经尝试了下面给出的一些建议,但我无法让它发挥作用。

标签: htmlcssxpath

解决方案


请检查这个 XPATH 表达式

//ul[li="LINE 2"]/following-sibling::div/a

如果您不知道li可以使用哪个级别

//li[.="LINE ITEM 2"]/following::a[.="Edit"]

推荐阅读