Ruby on rails 3 xPath最后一个选择元素
有人能帮我让这个代码正常工作吗?我有几个select字段,我只需要变量中的最后一个字段Ruby on rails 3 xPath最后一个选择元素,ruby-on-rails-3,xpath,selenium,Ruby On Rails 3,Xpath,Selenium,有人能帮我让这个代码正常工作吗?我有几个select字段,我只需要变量中的最后一个字段 variable = browser.elements_by_xpath('//div[@class="nested-field"]//select[last()] 谢谢 类属性是否完全匹配? 如果加价是这样的话 <div class="nested-field other"> ... ... 然后,您必须按照确切的类进行匹配或使用xpath包含。这是一个常见问题解答:xpath中的[]运
variable = browser.elements_by_xpath('//div[@class="nested-field"]//select[last()]
谢谢 类属性是否完全匹配? 如果加价是这样的话
<div class="nested-field other">
...
...
然后,您必须按照确切的类进行匹配或使用xpath包含。这是一个常见问题解答:xpath中的
[]
运算符的优先级(优先级)高于/
伪运算符。这就是为什么必须使用括号来更改默认的操作员优先级。至少有几个类似的问题有很好的解释——搜索它们,阅读并理解
而不是:
//div[@class="nested-field"]//select[last()]
(//div[@class="nested-field"]//select)[last()]
使用:
//div[@class="nested-field"]//select[last()]
(//div[@class="nested-field"]//select)[last()]
我不明白为什么//div[@class=“nested field”]//select会匹配任何东西。@pguardiario:不是“匹配”,而是“选择”
//div[@class=“nested field”]//select
选择任何select
元素,该元素是任何div
元素的后代,其class
属性的值为“nested field”
。我想我的问题是为什么//select而不是/select?@pguardiario:someElement/select
只选择someElement
的子项(名为select
)。另一方面,someElement//select
选择任何名为select
的后代(子代、孙辈、孙辈等)。