如何清除在日历框中输入的默认值并发送新的出生日期
How to clear the default value entered in calendar box and send a new date of birth
我想在日历框中发送密钥,但该框中有一个默认值
我试图在 sendKeys 之前清除它,但它不起作用
我的代码:
Actions actions = new Actions(driver);
actions.moveToElement(driver.findElement(By.xpath("//*[@id='dateOfBirth']")));
actions.click();
actions. clear();
Thread.sleep(3000);
actions.sendKeys("07-12-2018");
actions.sendKeys(Keys.TAB);
actions.build().perform();
请帮我清除方框
HTML代码:
<input type="text" value="07-14-1993" id="dateOfBirth" class="react-datepicker-ignore-onclickoutside">
代替Actions
你可以试试:
WebElement input = driver.findElement(By.xpath("//*[@id='dateOfBirth']"));
input.click();
input.clear();
input.sendKeys("07-12-2018");
input.sendKeys(Keys.TAB); // I don't know why you need TAB, but since you have it in your code
或
Actions actions = new Actions(driver);
actions.moveToElement(driver.findElement(By.xpath("//*[@id='dateOfBirth']")));
actions.click();
actions.build().perform();
WebElement input = driver.findElement(By.xpath("//*[@id='dateOfBirth']"));
input.clear();
input.sendKeys("07-12-2018");
input.sendKeys(Keys.TAB);
或
Actions actions = new Actions(driver);
actions.moveToElement(driver.findElement(By.xpath("//*[@id='dateOfBirth']")));
actions.click();
actions.sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE);
Thread.sleep(3000);
actions.sendKeys("07-12-2018");
actions.sendKeys(Keys.TAB);
actions.build().perform();
或使用JavaScript:
WebElement input = driver.findElement(By.xpath("//*[@id='dateOfBirth']"));
JavascriptExecutor js=(JavascriptExecutor) driver;
js.executeScript("arguments[0].setAttribute(value, '07-12-2018')", input);
我想在日历框中发送密钥,但该框中有一个默认值
我试图在 sendKeys 之前清除它,但它不起作用
我的代码:
Actions actions = new Actions(driver);
actions.moveToElement(driver.findElement(By.xpath("//*[@id='dateOfBirth']")));
actions.click();
actions. clear();
Thread.sleep(3000);
actions.sendKeys("07-12-2018");
actions.sendKeys(Keys.TAB);
actions.build().perform();
请帮我清除方框
HTML代码:
<input type="text" value="07-14-1993" id="dateOfBirth" class="react-datepicker-ignore-onclickoutside">
代替Actions
你可以试试:
WebElement input = driver.findElement(By.xpath("//*[@id='dateOfBirth']"));
input.click();
input.clear();
input.sendKeys("07-12-2018");
input.sendKeys(Keys.TAB); // I don't know why you need TAB, but since you have it in your code
或
Actions actions = new Actions(driver);
actions.moveToElement(driver.findElement(By.xpath("//*[@id='dateOfBirth']")));
actions.click();
actions.build().perform();
WebElement input = driver.findElement(By.xpath("//*[@id='dateOfBirth']"));
input.clear();
input.sendKeys("07-12-2018");
input.sendKeys(Keys.TAB);
或
Actions actions = new Actions(driver);
actions.moveToElement(driver.findElement(By.xpath("//*[@id='dateOfBirth']")));
actions.click();
actions.sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE).sendKeys(Keys.BACK_SPACE);
Thread.sleep(3000);
actions.sendKeys("07-12-2018");
actions.sendKeys(Keys.TAB);
actions.build().perform();
或使用JavaScript:
WebElement input = driver.findElement(By.xpath("//*[@id='dateOfBirth']"));
JavascriptExecutor js=(JavascriptExecutor) driver;
js.executeScript("arguments[0].setAttribute(value, '07-12-2018')", input);