为什么XPath last()函数不能按我预期的那样工作?
我正在使用Java和Selenium编写测试。我需要将另一个元素内的最后一个元素,所以我使用last()函数,但问题是,当我申请时,它并不总是带给我最后一个:
//a//b[last()]至
<a> <l>
<b>asas</b>
</l>
<b>as</b>
</a>
得到<b>as</b>,它带给我:
<b>asas</b><b>as</b>
但是当我将其应用于:
<a> <b>asas</b>
<b>as</b>
</a>
它带给我:
<b>as</b>回答:
首先是简单的部分:
//a选择a文档中的所有元素。//a//b选择b文档中属于a元素后代的所有元素。
到目前为止,正常的东西。
- 要
b在 (a元素之下)选择最后一个元素://a//b[last()]
此处,过滤是b选择标准的一部分,因为[]优先级高于//。
- 要选择 的最后一个
b元素(在元素之下):a(//a//b)[last()]
在此,由于last()所有优先b元素()均用于覆盖默认优先级,因此它是所有选定元素列表上的索引。
以上是 为什么XPath last()函数不能按我预期的那样工作? 的全部内容, 来源链接: utcz.com/qa/400847.html

![请问js怎么去除name中, 头和尾的[]](/wp-content/uploads/2020/08/bVbK9sR.png)

