我需要以“10:00 AM”格式的“time”类型元素以时间格式传递数据。我使用以下代码:
public static void setShift()
{
txttime.sendkeys("1030AM");
}
这不起作用。输入此类数据的正确方法是什么?
使用以下代码:
它将用于文本框/文本区域控制
SimpleDateFormat formatter = new SimpleDateFormat("hh:mm a");
Date date = new Date();
txttime.sendkeys(date);
对于HTML输入类型,datetime-local
从硒处理它并不理想。它不是最常用的日期时间选择器,它在firefox或safari中不受支持。
对于chrome,日期时间格式显示在浏览器的机器中设置的格式。
如果你没有改变任何东西,我猜你正在获得guru99教程中显示的格式。
如果是这种情况,那么你错过了他们也在那里提供了解决方案。输入日期部分后,您需要按Tab键输入时间部分。您的代码中缺少哪个。
试试这个:
首先,输入日期
WebElement dateBox = driver.findElement(By.xpath("//form//input[@name='bdaytime']"));
dateBox.sendKeys("09252013");
其次,按Tab键
dateBox.sendKeys(Keys.TAB);
最后,输入时间
dateBox.sendKeys("0245PM");
注意:如果您的计算机具有不同的DateTime格式,那么这可能不起作用。您必须检查senKeys
可以实际输入的日期时间的哪一部分然后拆分该部分并使用Keys.TAB
按Tab键。然后输入下一部分直到完成。