【问题标题】:How to Automate HTML5 Date picker using Selenium?如何使用 Selenium 自动化 HTML5 日期选择器?
【发布时间】:2018-09-28 14:53:50
【问题描述】:

我的应用程序使用了 HTML5 日期选择器。

我们需要从该日期选择器中选择日期,但日期选择器在 DOM 中没有任何 Web 元素。

因此,我们无法选择日期。

我该如何解决这个问题?

<form action="/action_page.php">
    Date:
    <br>
    <input type="date" name="date">
    <br>

    <input type="submit">
</form>

这是我们的 html 5 日期选择器代码。

【问题讨论】:

  • 您好,您可以添加一些您尝试过的代码吗?这将有助于我们更好地理解问题。
  • 尝试使用 sendkeys。如果您的日期选择器附带一个文本框以显示所选日期

标签: selenium


【解决方案1】:

会有很多方法但是建议sendKeys方法。

如果我们看到 Date Picker 控件的 DOM,则只有日期输入框。 要处理这种类型的控件,首先用字符串填充日期,即如果日期格式为 MM/dd/yyyy,则将 09282018 传递给输入框。请注意,这取决于您的日期格式。

WebElement date = driver.findElement(By.xpath("//form//input[@name='date']"));
//Fill date as format, ie, MM/dd/yyyy
date.sendKeys("09282018");
date.submit();

【讨论】:

  • 一般我们会这样做。但问题是输入框不可编辑,只读。所以我不能使用 sendKeys() 发送日期。那么如何处理这种类型的日期选择器呢?
  • 只读意味着您无法输入字符串以及如何使用 UI 选择日期?是这样吗?因为根据 DOM,这应该可以工作。
  • @SanjayBhimini 你能分享一下其他方法吗
猜你喜欢
  • 2021-10-06
  • 2012-04-29
  • 1970-01-01
  • 1970-01-01
  • 2019-01-25
  • 2019-03-22
  • 2021-02-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多