基本上我有多个是/否的无线电组合,我需要区分。有两个标签级别 - 所以我必须将两者放在Target表达式中以选择正确的值。
HTML
<div id="divFld1279-32-6093" class="wdg">
<label title="Whether a client is currently attending secondary school" for="Fld1279-32-6093">
At School Flag
<span class="spc"></span>
</label>
<br></br>
<div class="rbCv">
<label class="rbRad">
<input class="wdg" type="radio" value="Y" name="Fld1279-32-6093"></input>
Yes
</label>
</div
尝试约会
如果只有一个是/否无线电选择,则此方法有效:
//label[contains(text(),'Yes')]//input[@type="radio"]
这不起作用:
//label[contains(text(), 'At School Flag')]/preceding::label[contains(text(),'Yes')]//input[@type="radio"]
迄今为止的研究
我尝试使用this post来提出解决方案,但没有运气。
答案 0 :(得分:0)
为了尽量减少对您的尝试的更改,请将preceding
替换为following
,因为<label>
包含的文字"Yes"
跟随 { {1}}包含文字<div>
。
然后使用简单"At School Flag"
代替text()
。仅当要评估的文本节点是元素的第一个子时,才使用.
。作为一般规则,如果您不必使用text()
,或者如果您不确定是使用text()
还是text()
,请使用后者,使用.
(为便于阅读而包装):
.