Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SeleniumWebDriverJava:如何从值中获取下拉菜单中的可见文本?_Java_Selenium_Drop Down Menu_Webdriver - Fatal编程技术网

SeleniumWebDriverJava:如何从值中获取下拉菜单中的可见文本?

SeleniumWebDriverJava:如何从值中获取下拉菜单中的可见文本?,java,selenium,drop-down-menu,webdriver,Java,Selenium,Drop Down Menu,Webdriver,我正在使用以下下拉菜单: <select id="id_time_zone" name="time_zone" onchange="validate_field($(this), [validate_required])"> <option value="">Please Select</option> <option value="1">UTC-12</option> <option value="2"&

我正在使用以下下拉菜单:

<select id="id_time_zone" name="time_zone" onchange="validate_field($(this), [validate_required])">
    <option value="">Please Select</option>
    <option value="1">UTC-12</option>
    <option value="2">UTC-11</option>
    <option value="3">UTC-10</option>
    <option value="4">UTC-9</option>
    </select>
不起作用,getText()返回下拉列表中的所有值

@FindBy(id = "id_time_zone")
WebElement editSubOrg_timezone;

// Reads and returns field
public String readField() {
tmp = editSubOrg_timezone.getAttribute("value") ;
return tmp;  
}
不起作用,getAttribute(“值”)返回值(即1,2,3,4),而不是相应的显示文本。如果选择了元素,则方法返回
true
。元素可以是下拉列表中的元素,也可以是复选框或单选按钮

@FindBy(id = "id_time_zone")
WebElement editSubOrg_timezone;

public String readField() {
   Select select = new Select(editSubOrg_timezone);
   WebElement tmp = select.getFirstSelectedOption();
   return tmp.getText();  
}
 @FindBy(id = "id_time_zone")
WebElement editSubOrg_timezone;

// Reads and returns field
public String readField() {
   List<WebElement> options = editSubOrg_timezone.findElements(By.tagName("option"));
   for (WebElement option : options) {
      if (option.isSelected) {
           return option.getText();
      }
   }
   return null;  
}
@FindBy(id=“id\u时区”)
WebElement editSubOrg_时区;
//读取并返回字段
公共字符串读取字段(){
列表选项=editsuberg_timezone.findElements(按.tagName(“选项”));
用于(WebElement选项:选项){
如果(选择选项isSelected){
return option.getText();
}
}
返回null;
}

我使用以下方法(C#)获取所选项目的文本:

public string getSelectedLabel(ddlDropListID)
{
   string selected;
   SelectElement selectOption = new SelectElement(ddlDropListID);
   selected = selectOption.SelectedOption.Text;
   return selected;
}

如果你能给我网页的url,我可以帮你
public string getSelectedLabel(ddlDropListID)
{
   string selected;
   SelectElement selectOption = new SelectElement(ddlDropListID);
   selected = selectOption.SelectedOption.Text;
   return selected;
}