我需要使用selenium从下拉列表中选择一个项目。该网站看起来像这样
<div class="chosen-drop">
<div class="chosen-search"><input type="text" autocomplete="off"></div>
<ul class="chosen-results">
<li class="active-result style="" data-option-array-index="0">Please choose your main activity</li>
<li class="active-result" style="" data-option-array-index="1">Animals and Pets</li>
<li class="active-result" style="" data-option-array-indexx="2">Art and Culture</li>
<li class="active-result" style="" data-option-array-index="3">Babies</li>
<li class="active-result" style="" data-option-array-index="4">Beauty and Personal Care</li>
<li class="active-result" style="" data-option-array-index="5">Cars</li>
<li class="active-result" style="" data-option-array-index="6">Computer Hardware and Software</li>
</ul>
如何选择/点击“Cars”/ data-option-array-index =“5”?
我相信你可以使用一个简单的css选择器来获取你想要的元素:nth-child。例如,要获得2个条目,您可以编写这样的选择器:
.chosen-drop ul> li:nth-child(2)
你可以这样做,因为我知道java所以我在java中编写代码。首先列出LIST
中的所有定位器,然后使用For- Each和If else,您可以选择特定项目并执行操作
//Locate all elements in list
List<WebElement> dropEle= driver.findElements(By.xpath("//ul[@class='chosen-results']//li"));
for (WebElement tempEle : dropEle) {
//condition to check text
if(tempEle.getText().contains("Cars"))
{
// Do operations
System.out.println("Pass");
}
}