2014-02-24 128 views
0

我無法給值如下文本字段send_keys輸入值(它離開該字段爲空):無法與硒與Python

browser.find_element_by_name("userId").clear() 
browser.find_element_by_name("userId").send_keys('myname') 

這是文本的HTML部分現場即時試圖給予價值:

<td align="left"> &nbsp;&nbsp;&nbsp;&nbsp; <input name="userCB" type="checkbox" onclick="disable_enable_user(checked)"/> User ID<br /></td> 
<td align="left"> 
<input name="userId" type="text" size="15" value="" disabled="disabled"> 

是否因爲該字段被禁用,如果是的話,我該如何啓用它?

+0

問喜歡你: http://stackoverflow.com/questions/20689963/selenium-web-automation-send-values-to-disabled-text-box – Port

回答

0

您可以通過使用JavascriptExecutor設置元素的屬性值(例如Java編寫,但你能得到的想法):

JavascriptExecutor js = (JavascriptExecutor) driver; 
js.executeScript("document.getElementById('element id').setAttribute('attrName', 'value')"); 

一般來說,這不是一個很好的做法,嘗試設置如果目標是測試自動化,則將值賦予禁用的字段(即使通過操作)。 AS是你應該自動錶單並尋找解決辦法只有:

  1. 「用戶流」,否則無法自動
  2. 這個特定的測試並不重要

希望這有助於

+0

嗨,我能夠通過瀏覽器一樣的價值.execute_sc ript(「document.getElementById('endDate_Year_ID')。value ='2013'」),但這些值最終沒有得到體現。缺省值僅被選中 – user3291718