一个下拉列表两个id(div id,select id)如何在java中的selenium webdriver中进行选择

一个下拉列表两个id(div id,select id)如何在java中的selenium webdriver中进行选择,selenium,selenium-webdriver,Selenium,Selenium Webdriver,html 错误的“href=”#“>选择一个 class=“select2搜索选择关闭”style=“显示:无;"/> 选一个 安得拉邦 您需要一个id才能找到元素,请使用select的id new Select(driver.findElement(By.id("tx_rm0x0_state"))).selectByVisibleText("Andhra Pradesh"); 它应该工作得很好。我认为在您的代码中,ID是动态的,可能每次加载页面时都会发生变化。 因此,如果您可以根据标记名

html

  • 错误的“href=”#“>选择一个 class=“select2搜索选择关闭”style=“显示:无;"/> 选一个 安得拉邦

  • 您需要一个id才能找到元素,请使用select的id

    new Select(driver.findElement(By.id("tx_rm0x0_state"))).selectByVisibleText("Andhra Pradesh");
    

    它应该工作得很好。

    我认为在您的代码中,ID是动态的,可能每次加载页面时都会发生变化。 因此,如果您可以根据标记名找到元素,那就更好了:

    new Select(driver.findElement(By.tagname("select"))).selectByVisibleText("Andhra Pradesh");
    
    或者也可以使用xpath查找元素。

    使用此 新选择(driver.findElement(按.id(“s2id\u tx\u rm0x0\u state”))。选择可视文本(“安得拉邦”)

    或者,最好的解决方案是:

          Select select = new Select(driver.findElement(By.id("s2id_tx_rm0x0_state")));
      select.selectByValue("Andhra Pradesh");
    

    享受吧!

    有更多相同id的元素吗?请提供完整的选择html。我认为css会创建更多下拉列表并隐藏原始内容。。。