Selenium Datepicker using JavascriptExecutor

前端 未结 2 488
生来不讨喜
生来不讨喜 2020-12-04 03:33

Please advise if this approach is accepted to pick-up date using Selenium

WebDriver driver = new ChromeDriver();

driver.manage().window().maximize();

drive         


        
2条回答
  •  清歌不尽
    2020-12-04 04:26

    To pick-up a date within the DEPART DATE field in the website https://www.spicejet.com/ using Selenium's executeScript() method from JavascriptExecutor you can use the following Locator Strategies:

    • Code Block:

        System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe");
        ChromeOptions options = new ChromeOptions();
        options.addArguments("start-maximized");
        options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation"));
        options.setExperimentalOption("useAutomationExtension", false);
        WebDriver driver =  new ChromeDriver(options);
        driver.get("https://www.spicejet.com/");
        WebElement element = driver.findElement(By.cssSelector("input[name$= 'txt_Fromdate']"));
        ((JavascriptExecutor)driver).executeScript("arguments[0].removeAttribute('readonly')", element);
        WebElement newElement = driver.findElement(By.cssSelector("input[name$= 'txt_Fromdate']"));
        ((JavascriptExecutor) driver).executeScript("arguments[0].setAttribute('value','28/02')", newElement);
      
    • Browser Snapshot:

    spicejetDepartureDate


    References

    You can find a couple of relevant detailed discussions in:

    • Is there a way to add a new attribute with a value to an element using selenium python?
    • How to use javascript to set attribute of selected web element using selenium Webdriver using java?
    • Python - How to edit href attribute in source code before clicking using Selenium

提交回复
热议问题