3

次のドロップダウンメニューを使用しています。

<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>

私がやろうとしていること: 選択されている現在のテキストを返すプログラムを作成しようとしています。たとえば、「UTC-12」が選択されている場合、私のメソッドは String timezone="UTC-12." を返します。

私がこれまでに試したこと:

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

// Reads and returns field
public String readField() {
tmp = editSubOrg_timezone.getText();
return tmp;  
}

機能しません。getText() はドロップダウンのすべての値を返します

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

// Reads and returns field
public String readField() {
tmp = editSubOrg_timezone.getAttribute("value") ;
return tmp;  
}

機能しません。getAttribute("value") は、対応する表示テキストではなく、値 (つまり、1、2、3、4) を返します。

4

3 に答える 3

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

public String readField() {
   Select select = new Select(editSubOrg_timezone);
   WebElement tmp = select.getFirstSelectedOption();
   return tmp.getText();  
}
于 2013-07-26T03:03:18.957 に答える
0

選択したアイテムのテキストを取得するには、次のメソッド (C#) を使用します。

public string getSelectedLabel(ddlDropListID)
{
   string selected;
   SelectElement selectOption = new SelectElement(ddlDropListID);
   selected = selectOption.SelectedOption.Text;
   return selected;
}
于 2014-10-22T09:03:35.347 に答える