如何在不使用Select类的情况下从Dropdown中选择值,因为我的下拉列表框中的列表框未选中?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在不使用Select类的情况下从Dropdown中选择值,因为我的下拉列表框中的列表框未选中?相关的知识,希望对你有一定的参考价值。

My html code is here:
    <fieldset>
<div class="clearfix">
<div class="clearfix">
<div class="clearfix">
<div class="clearfix">
<div class="qs-formfield-short qs-required">
<label for="stateCountry">State or Province</label>
<span class="k-widget k-dropdown k-header" style="" title="" unselectable="on" role="listbox" aria-haspopup="true" aria-expanded="false" tabindex="0" aria-owns="stateCountry_listbox" aria-disabled="false" aria-readonly="false" aria-busy="false">
<span class="k-dropdown-wrap k-state-default" unselectable="on">
<span class="k-input" unselectable="on">Please Select...</span>
<span class="k-select" unselectable="on">
<span class="k-icon k-i-arrow-s" unselectable="on">select</span>
</span>
</span>

我的代码在这里:

WebElement stateDropDown = driver.findElement(By.xpath(“/ html / body / form / div [3] / main / div / div / div / span / div / fieldset / div [4] / div [1] / span /跨度[1]“));列表选项= stateDropDown.findElements(By.xpath(“/ html / body / div [1] / div / ul / li [44]”));

    for(WebElement opt : options){
        if ("Texas".equals(opt.getText()));
        opt.click();
        System.out.println(opt);
答案

尝试这样的smth:

Actions action = new Actions(driver);    
WebElement optionsList = driver.findElement(By.xpath("//span[contains(@class, 'k-dropdown-wrap')]"));
action.moveToElement(optionsList);

List<WebElement> options = driver.getElemets(By.xpath("//span[contains(@class, 'k-input')]"));
for(WebElement option : options) {
    if (option.getText().equals("Texas")) {
        option.click();
    }
}

停止向元素编写奇怪的xpath :)

以上是关于如何在不使用Select类的情况下从Dropdown中选择值,因为我的下拉列表框中的列表框未选中?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不复制的情况下从 N 维容器中获取可迭代范围?

如何在不指定列名的情况下从另一个表更新一个表?

我可以在不使用管道的情况下从 Azure Synapse 查询 SQL Server 数据库吗?

如何在不使用表单的情况下从 jsp 调用 servlet

如何在不使用子进程的情况下从 python 自动化脚本中运行 python 'sdist' 命令?

如何在不使用 Xcode、iPhone 中的谷歌地图的情况下从地址获取纬度和经度