繁体   English   中英

无法在 Selenium sendKeys() 中发送时间输入值

[英]Not able to send time input values in Selenium sendKeys()

我正在尝试将输入值发送到<input type="time">的 HTML 元素,但似乎无法获取要插入的值。 有一个更好的方法吗?

WebDriver driver = new ChromeDriver();

WebElement startTime = driver.findElement(By.id(Constants.startTime)); //'startTime
WebElement endTime = driver.findElement(By.id(Constants.endTime)); //'endTime'

startTime.sendKeys("03:40 AM");
endTime.sendKeys("09:00 PM");

在此您可以像这样发送开始时间和结束时间:-

startTime.sendKeys("0340AM");
endTime.sendKeys("0900PM");

一种方法是通过 JavaScriptHH:MM:SS格式设置输入值:

JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].value = '21:40:00';", endTime);

在 Firefox 中对我有用的是使用 ISO 格式:

startTime.sendKeys("08:00:00");

可能与您无法粘贴这些输入元素有关。 使用操作对我有用:

const actions = startTime.getDriver().actions()     
actions.sendKeys(timeString).perform()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM