如何通过xpath获取元素的索引?

时间:2013-05-13 10:04:25

标签: xpath indexing element

我接下来的结构:

<div id='list'>
   <div class='column'>aaa</div>
   <div class='column'>bbb</div>
   ...
   <div class='column'>jjj</div>
</div>

我很想知道是否有办法使用XPath,并且编写一些查询,我可以在“list”元素中获取所请求元素的索引。

我的意思是我要求class='column'的位置,其中文字值为aaa,我会01 ...

由于

4 个答案:

答案 0 :(得分:5)

你可以只计算你正在寻找的元素之前的div元素:

count(div[@id = 'list']/div[@id = 'myid']/preceding-sibling::div)

答案 1 :(得分:3)

评估位置的硒方式:

 int position = driver.findElements(By.xpath("//div[@class='column' and text()='jjj']/preceding-sibling::div[@class='column']")).size() + 1;
System.out.println(position);

答案 2 :(得分:2)

你可以count前面的兄弟姐妹:

count(//div[@id="list"]/div[@id="3"]/preceding-sibling::*)

答案 3 :(得分:0)

您可以使用此xpath计算有多少“前兄弟”也属于类'列':

//div[@class='column' and text()='jjj']/preceding-sibling::div[@class='column']