为禁用的下拉选项创建定位器,并使用Selenium Java选择

我尝试为以下下拉选项创建一个定位器,然后从中选择任何选项。当我为一个选项创建WebElement并尝试选择它时,不会在复选框中填充它。我认为这可能是由于“ disabled”标签所致。如果您能够解决问题,能否请您解释一下解决方案?

<select id="Dropdown">
<option value="" disabled="disabled" selected="true">Select Options</option>
<option value="Op1">Option 1</option>
<option value="Op2">Option 2</option>
<option value="Op3">Option 3</option>
</select>
huayuan1005 回答:为禁用的下拉选项创建定位器,并使用Selenium Java选择

如果您可以在html中看到选项,则可以直接选择类似的选项

driver.findElement(By.xpath("//option[text()='Option 1']")).click();

如果上述方法无效,请先单击下拉列表,然后使用上述代码选择选项。

,

有两种方法可以做到这一点:

首先,您可以使用select内置的硒方法。您可以这样做:

Select dropdown = new Select(driver.findElement(By.id("Dropdown")));
dropdown.selectByVisibleText("Option 1"); //this will select option 1
dropdown.selectByValue("Op2"); //this will select option 2
dropdown.selectByIndex(2); //this will select option 3

第二种方法是单击dropdown元素,然后从列表中选择选项:

WebElement dropdown = driver.findElement(By.id("Dropdown"));
dropdown.click(); //this will open list
WebElement option1 = driver.findElement(By.xpath(".//option[@value='Op1']"));
option1.click(); //to select first option

如果要选择其中两个选项,则可以对其他2个选项使用相同的方法。

,

请检查以下选项是否适合您。

WebElement values_dropdown=driver.findElement(By.id("Dropdown"));
Select drpdownop1=new Select(values_dropdown);
List<WebElement> dropdownlist=drpdownop1.getOptions();
for(int i=0;i<dropdownlist.size();i++){
String drop_down_options=dropdown.get(i).getText();
//put if condition  and select value you want.
System.out.println("dropdown values are "+drop_down_options);
} 

希望这会有所帮助。

本文链接:https://www.f2er.com/3144885.html

大家都在问