gpt4 book ai didi

java - Selenium Select 找不到选项

转载 作者:行者123 更新时间:2023-12-01 11:18:10 33 4
gpt4 key购买 nike

当我找到并分配一个获取其选项的 Select 对象时遇到问题,可能是由于页面上的一些不稳定的 HTML 造成的。以下是 Select 及其选项的 HTML:

<select>
<option selected="" val="1">1</option>
<option val="2">2</option>
<option val="3">3</option>
<option val="4">4</option>
<option val="5">5</option>
...
</select>

使用 XPath 定位选择,如下所示:.//*[@id='employeeTable_paginate']/div/select

我想知道它是否无法找到选项,因为在HTML中被称为vals?我尝试了以下代码来查看它是否会获得选项:

for (WebElement 选项: select.getOptions()) System.out.println(option);

但它不打印任何内容。此外,如果我尝试按索引选择一个选项,它会说它无法找到具有该索引的选项。

最佳答案

在这种情况下 selectByValue 肯定不起作用。如果您转到implementation of Select ,您可以看到 selectByValue() 使用 xpath 来查找 value 字段。好消息是它很容易修复。

对于您的情况,您需要找到单个值(而是搜索 val),然后选择它。

WebElement option = element.findElement(By.xpath(
".//option[@val = '" + value + "']"));

if (!option.isSelected())
{
option.click();
}

我不知道为什么 selectByIndex 不起作用,你能检查一下 select.getOptions() 的计数吗?选择对象总是有可能不正确。

关于java - Selenium Select 找不到选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31546083/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com