我在网页中有多个选择框的以下代码,我需要 使用selenium为列表选择任何选项组 的webdriver
<div class="ms-drop bottom" style="display: block;">
<div class="ms-search">
<ul style="max-height: 250px;">
<li class="group">
<label class="optgroup" data-group="group_0" style="display: block;">
<input type="checkbox" name="selectGroup">AmaWaterways
</label>
</li>
<li class="multiple" style="width: 180px;">
<label style="display: block;">
<input type="checkbox" data-group="group_0" value="AmaSerena" name="selectItem">AmaSerena
</label>
</li>
<li class="multiple" style="width: 180px;">
<label style="display: block;">
<input type="checkbox" data-group="group_0" value="AmaPura" name="selectItem">AmaPura
</label>
</li>
</ul>
</div>
</div>
有人可以建议如何选择我选择的选项组吗?
答案 0 :(得分:0)
为了切换复选框,它就像点击它一样简单。
String targetOption = "whatever";
By targetOptionLocator = By.cssSelector("input[type=checkbox][value=" + targetOption + "]");
driver.findElement(targetOptionLocator).click();
您可能还想检查是否已选中复选框:WebElement#isSelected。
E.g:
void selectOption(String optionName) {
By targetOptionLocator = By.cssSelector("input[type=checkbox][value='" + + optionName + "']");
WebElement option = driver.findElement(targetOptionLocator);
if(!option.isSelected())
option.click();
}