【发布时间】:2017-07-30 10:31:34
【问题描述】:
我正在使用以下 XPath 选择器:
//*[text()="Surname"]//parent::*//following-sibling::*[self::select or self::input or self::textarea]
//*[text()="Surname"]//parent::*//following-sibling::*//*[self::select or self::input or self::textarea]
要选择输入,请从以下任一结构中的标签中选择或 textarea:
<div>
<div><label for="">Surname</label></div>
<div class="help">Some help text in a tooltip</div>
<div class="control">
<div>
<input type="text" value="" />
</div>
</div>
</div>
或者这个:
<div>
<div><label for="">Surname</label></div>
<div class="help">Some help text in a tooltip</div>
<input type="text" value="" />
</div>
这很好用,但是只关注选择器的末尾,我想知道是否可以只使用一个选择器?
我已经在上面的第二个选择器上尝试了 descendant-or-self 而不是 self,但它在选择第二个 dom 结构时不起作用。
【问题讨论】:
-
你用的是哪个浏览器?
-
我仍然不确定为什么你不能
select an input<input type="text" name="test2" value="" id="test2" />显然有一个id="test2"。我错过了什么吗?谢谢 -
是的,对不起,我的例子很糟糕。我现在将移除所有的钩子。
-
使用 Chrome。其实第一个选择器同时满足
标签: selenium xpath selenium-webdriver