在 Selenium IDE 中使用 xpath 识别以前的项目
Identifying previous items using xpath in Selenium IDE
我想根据标记为 'Field' 的文本输入中的值选中复选框 我尝试了以下方法:
<tr>
<td>check</td>
<td>/label[text()="Field"]/../input[@value="6 1012 49817"]/preceding-sibling::label[text()="Private"]/../input</td>
<td></td>
</tr>
这里是 HTML:
<div class="wdg colShwHdeCls" id="divFormFieldPrivate-0" style="width: 82px;">
<input id="FormFieldPrivate-0" name="FormFieldPrivate-0" title="" style="" class="wdg colShwHdeCls" type="checkbox">
<label for="FormFieldPrivate-0">Private</label>
</div>
<div class="csLineBreak"> </div>
<div class="acI fldWd100 wdg colShwHdeOpn" id="divFormFieldId-0"><label for="FormFieldId-0">Field<a class="aut" title="Show selection list"></a>
<a style="display: inline-block; opacity: 0.0118143;" href="field/view?FieldId=" title="View this Field" class="acOptVw acLb acI"></a>
<a style="display: inline-block; opacity: 0.0118143;" href="field/edit?FieldId=" class="acEd acLb acI" title="Edit this Field"></a>
<a style="display: inline-block; opacity: 0.0118143;" href="field/add?FieldId=" class="acAd lightbox acI" title="Add a new Field"></a>
</label>
<br>
<span style="display:none;" id="FormFieldId-0-Old">6 1012 49817</span>
<input id="FormFieldId-0" name="FormFieldId-0" value="11955" type="hidden">
<input autocomplete="off" id="FormFieldId-0-Dsp" title="type three or more characters to see selection list" class="wdg csAutCpl csAutCplFld ui-autocomplete-input" value="6 1012 49817" type="text">
<span class="ui-helper-hidden-accessible" aria-live="polite" role="status"></span>
</div>
欢迎提出建议谢谢;-)
这是一种可行的方法。 XPath 的第一部分应该找到 div
元素,其中包含带有特定文本的 label
(在本例中为 "Field"
)和带有特定 value
属性的 input
:
//div[label[normalize-space(text())="Field"] and input[@value="6 1012 49817"]]
从上面的 div
中,找到包含 label
且文本等于 "Private"
的前一个兄弟 div
,然后获取该 input
的子元素 div
:
/preceding-sibling::div[label[text()="Private"]]/input
所以整个 XPath 看起来像这样:
//div[label[normalize-space(text())="Field"] and input[@value="6 1012 49817"]]/preceding-sibling::div[label[text()="Private"]]/input
我想根据标记为 'Field' 的文本输入中的值选中复选框 我尝试了以下方法:
<tr>
<td>check</td>
<td>/label[text()="Field"]/../input[@value="6 1012 49817"]/preceding-sibling::label[text()="Private"]/../input</td>
<td></td>
</tr>
这里是 HTML:
<div class="wdg colShwHdeCls" id="divFormFieldPrivate-0" style="width: 82px;">
<input id="FormFieldPrivate-0" name="FormFieldPrivate-0" title="" style="" class="wdg colShwHdeCls" type="checkbox">
<label for="FormFieldPrivate-0">Private</label>
</div>
<div class="csLineBreak"> </div>
<div class="acI fldWd100 wdg colShwHdeOpn" id="divFormFieldId-0"><label for="FormFieldId-0">Field<a class="aut" title="Show selection list"></a>
<a style="display: inline-block; opacity: 0.0118143;" href="field/view?FieldId=" title="View this Field" class="acOptVw acLb acI"></a>
<a style="display: inline-block; opacity: 0.0118143;" href="field/edit?FieldId=" class="acEd acLb acI" title="Edit this Field"></a>
<a style="display: inline-block; opacity: 0.0118143;" href="field/add?FieldId=" class="acAd lightbox acI" title="Add a new Field"></a>
</label>
<br>
<span style="display:none;" id="FormFieldId-0-Old">6 1012 49817</span>
<input id="FormFieldId-0" name="FormFieldId-0" value="11955" type="hidden">
<input autocomplete="off" id="FormFieldId-0-Dsp" title="type three or more characters to see selection list" class="wdg csAutCpl csAutCplFld ui-autocomplete-input" value="6 1012 49817" type="text">
<span class="ui-helper-hidden-accessible" aria-live="polite" role="status"></span>
</div>
欢迎提出建议谢谢;-)
这是一种可行的方法。 XPath 的第一部分应该找到 div
元素,其中包含带有特定文本的 label
(在本例中为 "Field"
)和带有特定 value
属性的 input
:
//div[label[normalize-space(text())="Field"] and input[@value="6 1012 49817"]]
从上面的 div
中,找到包含 label
且文本等于 "Private"
的前一个兄弟 div
,然后获取该 input
的子元素 div
:
/preceding-sibling::div[label[text()="Private"]]/input
所以整个 XPath 看起来像这样:
//div[label[normalize-space(text())="Field"] and input[@value="6 1012 49817"]]/preceding-sibling::div[label[text()="Private"]]/input