2016-02-28 6 views
2

я это drop down list:Выберите пункт из выпадающего списка

<div class="select_id" style="width: 592px;"><span class="left"></span><span class="center">103</span><a class="select-opener"></a></div> 
<select class="id-hidden" name="ids"><option value="">Please select...</option> 
<option value="a">a</option> 
<option value="b">b</option> 
<option value="c">c</option> 
<option value="d">d</option> 
<option value="e">e</option> 

Так я пытаюсь выбрать пункт.

Так у меня есть этот элемент:

val selectAccountDropDownListElement: WebElement = 
    wait.until(ExpectedConditions.visibilityOfElementLocated(
    By.cssSelector(("div.select_id")))) 

Открыть выпадающий список:

selectAccountDropDownListElement.click() 

А теперь, как я могу выбрать пункт от меня drop down list?

ответ

0

Это так просто, как (docs):

singleSel("id").value = "a" 

Или:

singleSel("id").selection = Some("a") 
+0

Что такое singleSel? –

+0

@ davidhol это класс, который расширяет 'Element' ([docs] (http://www.artima.com/docs-scalatest-2.0.M5/org/scalatest/selenium/WebBrowser$SingleSel.html)). – alecxe

+0

Как использовать это? (я не финал) –

0

Вы могли бы найти XPATH элементов.

Например, (пожалуйста, проверьте для себя), но:

a_xpath = "/select/option[0]" 
b_xpath = "/select/option[1]" 
c_xpath = "/select/option[2]" 
d_xpath = "/select/option[3]" 
e_xpath = "/select/option[4]" 

(я рекомендую использовать Firebug расширение на Firefox легко найти XPaths)

Затем вы можете нажать на варианты буквенных после вас открывается раскрывающийся список:

selectAccountDropDownListElement.click() # opens dropdown box 
driver.find_element_by_xpath(a_xpath).click() # clicks 'a' dropdown option 

Вот несколько руководств, которые могут вам помочь. :)

http://selenium-python.readthedocs.org/locating-elements.html http://www.wikihow.com/Find-XPath-Using-Firebug

+0

Я хочу, чтобы избежать использования номера индекса, вызывает изменение списка, поэтому я предпочитаю использовать элемент по имени –

+0

Попробуйте: 'a_xpath =" // input [@ value = 'a'] "или даже' // select/option [. = 'a'] '(из http://stackoverflow.com/questions/1535377/xpath-for-selecting-option-html-tag) – Brandon

+0

Я думаю, что не могу этого достичь, потому что элемент select скрыт, см. пример html –

Смежные вопросы