不能 select 来自 jquery 日期选择器日期范围 select 或 Selenium JAVA 的日期范围
Cannot select a date range from jquery datepicker date range selector in Selenium JAVA
我正在为 select 从 jquery 日期选择器日期范围 select 或使用 selenium web 驱动程序设置日期范围而苦苦挣扎。
下图显示了日期选择器。
我需要 select 此日历中的一个日期范围。我试过以下链接。
Link 2
我发现唯一相关的是以下代码段。
driver.switchTo().frame(driver.findElement(By.xpath("//iframe[@class='demo-frame'][@src='/resources/demos/datepicker/default.html']")));
driver.findElement(By.id("datepicker")).click();
System.out.println("Datepicker Clicked");
但是,它没有显示如何从日期选择器select日期范围。
提前致谢。 :-)
尝试下面的代码,看看它是否有效。
我从 select the Date Picker
偷了代码
((JavascriptExecutor)driver).executeScript ("document.getElementById('elementid').removeAttribute('readonly',0);"); // Enables the from date box
WebElement dateBox= driver.findElement(By.id("elementid"));
dateBox.clear();
dateBox.sendKeys("8-Dec-2014"); //Enter date in required format
根据我的经验,通过 findElement
调用与此类组件进行交互是没有意义的。除非你想让你的测试不稳定。此类日期选择器通常有 public API,可以直接通过 JavascriptExecutor
访问。快 sample:
$( ".selector" ).datepicker( "setDate", "10/12/2012" );
可以通过以下方式使用:
executeScript("$( '.selector' ).datepicker( 'setDate', '10/12/2012' );");
所以我建议你找出哪个 JS 库用于呈现你的日期选择器,检查它们 API,然后按照我上面写的方式直接访问它。
我正在为 select 从 jquery 日期选择器日期范围 select 或使用 selenium web 驱动程序设置日期范围而苦苦挣扎。
下图显示了日期选择器。
我需要 select 此日历中的一个日期范围。我试过以下链接。
Link 2
我发现唯一相关的是以下代码段。
driver.switchTo().frame(driver.findElement(By.xpath("//iframe[@class='demo-frame'][@src='/resources/demos/datepicker/default.html']")));
driver.findElement(By.id("datepicker")).click();
System.out.println("Datepicker Clicked");
但是,它没有显示如何从日期选择器select日期范围。
提前致谢。 :-)
尝试下面的代码,看看它是否有效。 我从 select the Date Picker
偷了代码((JavascriptExecutor)driver).executeScript ("document.getElementById('elementid').removeAttribute('readonly',0);"); // Enables the from date box
WebElement dateBox= driver.findElement(By.id("elementid"));
dateBox.clear();
dateBox.sendKeys("8-Dec-2014"); //Enter date in required format
根据我的经验,通过 findElement
调用与此类组件进行交互是没有意义的。除非你想让你的测试不稳定。此类日期选择器通常有 public API,可以直接通过 JavascriptExecutor
访问。快 sample:
$( ".selector" ).datepicker( "setDate", "10/12/2012" );
可以通过以下方式使用:
executeScript("$( '.selector' ).datepicker( 'setDate', '10/12/2012' );");
所以我建议你找出哪个 JS 库用于呈现你的日期选择器,检查它们 API,然后按照我上面写的方式直接访问它。