2015-09-07 55 views
0

我想通過selenium設置日期值。如何設置值爲禁用的輸入元素

這與禁用屬性

一個datapicker元素此腳本不爲我

@driver.execute_script("document.getElementById('departureDate').setAttribute('value', '2015-09-07')") 

我甚至不能用這個@driver.execute_script("document.getElementById('departureDate').getAttribute('value')")

獲得價值不過,我可以得到檢查工作價值由

[50] pry(#<Tiger>)> el = @driver.find_element(:id, "departureDate") 
#<Selenium::WebDriver::Element:0x3f5415a2252a05c4 id="{f12a4095-6326-d241-b22d-aca9c03918e3}"> 
[51] pry(#<Tiger>)> el.attribute("value") 
"2015-09-18" 

但是怎麼可以我2015-09-07

設置的值我正在此頁面上https://m.tigerair.com/booking/search

回答

1

使用querySelector()通過提供css path獲得標籤信息,然後將此js -code添加硒作爲一個字符串。

var taginfo = document.querySelector('input#departureDate'); 
var date = taginfo.value; 
console.log(date); 

改變嘗試這個。

taginfo.value.replace('2015-09-08'); 
+0

我怎麼能添加這個js庫紅寶石硒,感謝 – newBike

+0

讀js代碼爲字符串和供應executeScript()@ driver.execute_script(jsAsString); [看到這個](http://stackoverflow.com/questions/11430773/how-to-use-javascript-with-selenium-webdriver-using-java/31293581#31293581) – Yash

+0

js_code =「return document.querySelector('input #departureDate')「 tagInfo = browser.execute_script(js_code)date = tagInfo .attribute(」value「) [here](http://stackoverflow.com/questions/20869034/selenium-parse-elements-to-string ) – Yash

相關問題