![](/img/trans.png)
[英]How to select an item from a dropdown list using Selenium WebDriver with java?
[英]How to fetch dropdown value from List in selenium Webdriver by using java
如何将列表值视为下拉值?
如何从列表中选择编辑下拉值...
<div class="nice-select demoBasic" tabindex="0">
<span class="current">Please select</span>
<ul class="list">
<li class="option" data-value="1">Edit</li>
<li class="option" data-value="2">Delete</li>
</ul>
</div>
您应该尝试使用By.cssSelector()
获取列表中的所有选项,如下所示:-
WebDriverWait wait = new WebDriverWait(driver, 10);
//First click on select div
WebElement select = wait.until(ExepectedConditions.elementToBeClickable(By.cssSelector("div.nice-select.demoBasic")));
select.click();
//Not get all nested options
List<WebElement> options = wait.until(ExepectedConditions.presenceOfNestedElementsLocatedBy(select, By.cssSelector("ul.list li.option")));
//Now iterate to fetch all options and select edit option
for(WebElement option : options)
{
if(option.getText().equals("Edit"))
{
option.click();
}
}
或者您可以使用By.xpath()
如下一行基于文本来选择一个选项:-
wait.until(ExepectedConditions.elementToBeClickable(By.xpath(".//li[text() = 'Edit']"))).click();
我得到了解决方案...
driver.findElement(By.xpath("/html/body/div[1]/div[3]/div/div/div[2]/table/tbody/tr[3]/td[3]/div")).click();
driver.manage().timeouts().implicitlyWait(6000, TimeUnit.SECONDS);
Thread.sleep(4000);
driver.findElement(By.xpath("/html/body/div[1]/div[3]/div/div/div[2]/table/tbody/tr[3]/td[3]/div/ul/li[1]")).click();
driver.manage().timeouts().implicitlyWait(6000, TimeUnit.SECONDS);
Thread.sleep(4000);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.