无法在“下拉列表"中单击“文本" [英] Unable to click on 'Text' inside 'dropdown list'

查看:80
本文介绍了无法在“下拉列表"中单击“文本"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  1. 无法在下拉列表"中单击文本"
  2. 将信息输出到控制台时,它会列出所有标题(先生,夫人...)
  3. 我只是无法单击.Mr文本,有什么想法吗? (我不想使用发送密钥)

  1. Unable to click on 'Text' inside 'dropdown list'
  2. When outputing the information to console it lists all the titles (Mr., Mrs...)
  3. Im just unable to click on the .Mr text, any ideas? (I dont want to use send keys)

public void selectOptionFromDropdownMenu(WebElement dropdown, String textToSearchFor) {
List<WebElement> options = dropdown.findElements(By.tagName("option"));
dropdown.click();
System.out.println(options.size());

for (int i = 0; i < options.size(); i++) {
    System.out.println("DEVIL!!!"  + options.get(i).getText());

    if(options.get(i).getText() == "Mr.") {
        options.get(i).click();
    }
}

}

<select id="titlefield" class="form-control ng-pristine ng-untouched ng-invalid ng-invalid-required" name="Salutation" ng-model="PersonalDetails.Salutation" ng-options="salut.id as salut.id for salut in Salutations" ng-required="FlowData.IsGuest" required="required">
<option class="ng-binding" value="">Please select</option>
<option value="0" label="Mr.">Mr.</option>
<option value="1" label="Miss">Miss</option>
<option value="2" label="Mrs.">Mrs.</option>
<option value="3" label="Ms.">Ms.</option>
<option value="4" label="Dr.">Dr.</option>
</select>

推荐答案

public void selectOptionFromDropdownMenu(WebElement dropdown, String textToSearchFor) {
List<WebElement> options = dropdown.findElements(By.tagName("option"));
Select selectDropdown = new Select(dropdown);
//dropdown.click();
System.out.println(options.size());

for (int i = 0; i < options.size(); i++) {
    System.out.println("DEVIL!!!"  + options.get(i).getText());

    if(options.get(i).getText().equals(textToSearchFor)) {
    selectDropdown.selectByVisibleText(textToSearchFor);
        //options.get(i).click();
    }
}

这篇关于无法在“下拉列表"中单击“文本"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆