Html 如何正确使用'XPath'定位符,例如'parent'、'child'、兄弟'?
我有一些表格:Html 如何正确使用'XPath'定位符,例如'parent'、'child'、兄弟'?,html,xpath,Html,Xpath,我有一些表格: <div class="form_item--2c8WB"> <label> <span class="label--2VxxL required--2nkmI"> "Text" ::after </span> <br> <input type="password" name="newPass
<div class="form_item--2c8WB">
<label>
<span class="label--2VxxL required--2nkmI">
"Text"
::after
</span>
<br>
<input type="password" name="newPasswordRepeat" autocomplete="new-password"
aria-invalid="true" aria-required="true"
aria-errormessage="vee_Text2">
</label>
<div class="errors--qVgtm">
<div>Text3</div>
</div>
</div>
路径是有效的,但还有很长的路要走,我想使用follow sibling
命令。但我不能那样做
例如,我尝试使用父项::
路径:
//input[@name='newPasswordRepeat']/parent::
//input[@name='newPasswordRepeat']::parent::
//input[@name='newPasswordRepeat']::parent
//input[@name='newPasswordRepeat']/parent
//input[@name='newPasswordRepeat']/::parent
这个订单上没有人不工作,只有
//input[@name='newPasswordRepeat']/..
我也不能使用跟随兄弟姐妹
,但在这种情况下,不存在另一种方式(。
,
)
- 如何正确使用
定位器,例如XPath
、父项
、兄弟项`子项
选择父节点如果它是parent::div
(这是节点测试)
选择属于祖先::div
s的所有(!)祖先节点
选择following sibling::div
s的所有(!)following sibling
[谓词]
来缩小选择范围以防止误报是明智的-例如,我们可以验证@class
属性
//input[@name='newPasswordRepeat']/parent::label/following-sibling::div[starts-with(@class, 'errors')]/div
当然<代码>父::标签可以缩短为<代码> .<代码>如果我们不关心父元素是什么元素。
而不是选择一个目标,并且必须遍历父类,首先考虑在父上使用谓词://label[input/@name='newPasswordRepeat']/following-sibling::*[1]/div
将选择紧跟在包含目标输入元素的标签之后的元素的div
子元素。无父项::
轴是必需的
//label[input/@name='newPasswordRepeat']/following-sibling::*[1]/div