我怎样才能将值设置为禁用的输入元素

时间:2015-09-07 05:20:23

标签: selenium

我想通过selenium设置日期值。

哪个是具有禁用属性的数据贴纸元素

这个脚本对我不起作用

@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 个答案:

答案 0 :(得分:1)

使用querySelector() 提供css path 以获取标记信息,然后将此js - 代码添加到selenium作为一个字符串。

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

要改变尝试这个。

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