selenium webdriver——JS操作日歷控件


一般的日期控件都是input標簽下彈出來的,如果使用webdriver 去設置日期,

1. 定位到該input

2. 使用sendKeys 方法 

比如

但是,有的日期控件是readonly的

比如12306的這個

<input id="train_date" class="inp-txt" type="text" value="" name="leftTicketDTO.train_date" autocomplete="off" maxlength="10" readonly="readonly">

這個時候,沒法調用WebElement的sendKeys()


方法1:使用JS remove readonly attribute,然后sendKeys

JavascriptExecutor driver_js= (JavascriptExecutor) driver;
driver_js.executeScript("arguments[0].removeAttribute(\"readonly\") ", driver.findElement(By.id("train_date")));
driver.findElement(By.id("train_date")).clear();
driver.findElement(By.id("train_date")).sendKeys("2016-08-20");

 

方法2:使用JS輸入

JavascriptExecutor driver_js= (JavascriptExecutor) driver;
driver_js.executeScript("arguments[0].value=\"2016-08-20\"",driver.findElement(By.id("train_date")));

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM