无法在Selenium WebDriver中使用Javascript更改日期

无法在Selenium WebDriver中使用Javascript更改日期,javascript,selenium-webdriver,Javascript,Selenium Webdriver,我无法使用Javascript代码更改网页中可见的日期,如下所示: HTML源代码: Date字段显示当前日期,如果我尝试使用如下所示的value属性获取值,但无法使用如上所示的js使用value属性更改其值 driver.findElement(By.id("Datefromdate")).getAttribute("value"); 产量=2014年9月16日 请帮助查找解决方案。在您的代码集合中属性不是有效的Javascript 您需要更改此行: js.executeScript("ar

我无法使用Javascript代码更改网页中可见的日期,如下所示:

HTML源代码:

Date字段显示当前日期,如果我尝试使用如下所示的value属性获取值,但无法使用如上所示的js使用value属性更改其值

driver.findElement(By.id("Datefromdate")).getAttribute("value");
产量=2014年9月16日

请帮助查找解决方案。

在您的代码集合中属性不是有效的Javascript

您需要更改此行:

js.executeScript("arguments[0].setAttribute('value', '10/16/2014')",element);
为此:

js.executeScript("arguments[0].value='10/16/2014'");

实际上,在JSDOM元素上调用setAttribute时,对于IE8之后的大多数浏览器来说,setAttribute是绝对有效的javascript方法。使用.value可能是一种更通用的方法,但这并不是问题的答案。
js.executeScript("arguments[0].setAttribute('value', '10/16/2014')",element);
js.executeScript("arguments[0].value='10/16/2014'");