java
  • selenium
  • selenium-webdriver
  • jquery-ui-datepicker
  • 2017-08-24 93 views -1 likes 
    -1

    我很努力从jquery datepicker日期范围选择器中使用selenium web驱动程序选择一个日期范围。无法从jquery datepicker日期范围选择器中选择一个日期范围在Selenium JAVA

    下图显示了日期选择器。

    calendar

    我需要从这个日历中选择一个日期范围。我试过以下链接。

    Link 1

    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"); 
    

    但是,它不显示如何从日期选择器中选择日期范围。

    在此先感谢。 :-)

    回答

    1

    从我的经验,这是没有意义通过findElement调用与这些组件进行交互。除非你想让你的测试不稳定。这种日期选择器通常具有公共API,可以通过JavascriptExecutor直接访问。快速sample

    $(".selector").datepicker("setDate", "10/12/2012"); 
    

    可以使用以下方法:

    executeScript("$('.selector').datepicker('setDate', '10/12/2012');"); 
    

    所以我建议你找出哪些JS库用来渲染你的日期选择器,检查它们的API,以及它直接按照我上面写的方式。

    -1

    试试下面的代码,并让它看看它是否工作。 我偷了代码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 
    
    +0

    这是什么dateBox? –

    +0

    更新了我的答案。 – Kapil

    +0

    我没有输入日期的文本字段。只有日历 –

    相关问题