2015-12-02 105 views
2

我遇到以下問題。我有一個隱藏的,所以當我做出選擇和運行測試,我得到以下錯誤下拉:使用硒和python從下拉菜單中選擇一個選項

selenium.common.exceptions.ElementNotVisibleException:消息:元素不可見:元素當前不可見,不得被操縱

以下

的代碼中,我一直在努力:

cur=Select(driver.find_element_by_id("currencyCode")) 
cur.select_by_visible_text('USD') 
下面

是代碼的HTML語法:

<div class="form-group true-grid-3"> 
      <label for="currencyCode">Currency</label> 
      <select id="currencyCode" name="criteria.currencyCode" class="form-control" style="display: none;"> 
       <option value="CHF">CHF</option> 
       <option value="EUR">EUR</option> 
       <option value="GBP">GBP</option> 
       <option value="JPY">JPY</option> 
       <option value="USD">USD</option> 

回答

3

在css屬性中將display: none設置爲display: block,以便元素變爲可見。

driver.execute_script("document.getElementById('criteria.currencyCode').style.display = 'block';") 
+0

此解決方案完美的,如果我的ID從「criteria.currencyCode」到「貨幣代碼」改變萬分感謝! –

1

你可以嘗試致電下拉driver.find_element_by_id("currencyCode").click()然後,當選擇變得可見,選擇需要的選項driver.find_element_by_xpath('//option[@value="USD"]').click()

+0

不斷顯示相同的錯誤andersson,它的工作,如果我改變顯示從「無」到「塊」使用JavaScript代碼。謝謝 ! –

相關問題