选择同级元素的子级

时间:2018-12-27 08:06:55

标签: selenium xpath ancestor

我有以下HTML DOM。我的目标是获取“错误”文本。

<div class = "row">
   <div class ="col-sm-4">
      <input id = "firstName" type = "text"> John
      <div class = "mh-15">
         <div class = "text-danger">Error</div>
      </div>
   </div>
</div>

由于class =“ text-danger”被重复了无数次,因此我的目标是通过从id =“ firstName”开始并使用诸如xpath祖先的方式来获取“ Error”文本。我该怎么办?谢谢!

2 个答案:

答案 0 :(得分:2)

Xpath:

//input[@id='firstName']/following-sibling::div[2]

请注意,<div class = "mh-15">应该是输入框的同级。

答案 1 :(得分:2)

ancestor用于选择父元素,class="text-danger"id="firstName"元素之后,您必须使用followingfollowing-sibling

//input[@id="firstName"]/following-sibling::div/div
# or
//input[@id="firstName"]/following::div/div