首页 > 解决方案 > 如何按名称选择复选框

问题描述

我正在努力为我的复选框获取正确的 css(或任何其他)定位器。页面上有两个具有相同属性的不同文本,我不知道如何构建工作选择器。我想避免使用索引。我想通过'Name1''Name2' 以下是属性来选择它们:

<label>
<input class="some class name" name="checkOptions" type="checkbox">Name1
</label>

<label>
<input class="some class name" name="checkOptions" type="checkbox">Name2
</label>

标签: htmlcssselenium

解决方案


如果元素的唯一唯一性是它们的文本,则必须根据该文本定位它们。
试试这个xpath//input[contains(text(),'Name1')]对于第一个和//input[contains(text(),'Name2')]第二个元素。
如果您需要添加更多唯一性,您可以添加类名或任何其他属性,如下所示:
//input[@class='some class name' and contains(text(),'Name1')]
//input[@class='some class name' and contains(text(),'Name2')]


推荐阅读