无法在selenium中选择依赖的下拉列表值

时间:2018-01-16 05:35:07

标签: selenium

系统让我无法找到元素错误消息 场景是我必须选择包含薪水,自雇(商业),自雇(专业)等值的职业列表。在此基础上,我将使用下面的代码在下一个下拉列表中填充值值。

driver.findElement(By.id("select2-ED_EmpType-container")).click();
Thread.sleep(4000);
driver.findElement(By.xpath("//*[text()='Salaried']")).click();  

以上代码适用于其他下拉列表,但不适用于此下拉列表 此下拉列表的属性



<ul id="select2-ED_EmpType-results" class="select2-results__options" role="tree" aria-expanded="true" aria-hidden="false">
<li class="select2-results__option" role="treeitem" aria-selected="false"> Please select... </li>
<li id="select2-ED_EmpType-result-nhlf-Salaried" class="select2-results__option" role="treeitem" aria-selected="true"> Salaried </li>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:0)

似乎在xpath

下面的字符串中有空格
//li[normalize-space() ='Salaried']

答案 1 :(得分:0)

要点击选项 Salaried ,您可以使用以下任意一行代码:

  • cssSelector

    driver.findElement(By.cssSelector("li.select2-results__option#select2-ED_EmpType-result-nhlf-Salaried")).click(); 
    
  • xpath

    driver.findElement(By.xpath("//li[class='select2-results__option' and id='select2-ED_EmpType-result-nhlf-Salaried']")).click();