如何在水豚中编辑日历输入元素

How to edit a calendar input element in capybara

我目前正在尝试编辑日历输入元素并设置新日期。这是我正在尝试做的事情。

元素:

<input class="ant-calendar-input " placeholder="MM/DD/YYYY" value="03/01/2022">

Xpath:

/html/body/div[2]/div/div/div/div/div[1]/div/input

我的代码:

find("ant-calendar-input").set(value='01/01/2022')

我收到一条错误消息,提示水豚无法找到该元素。

"ant-calendar-input" 作为 CSS 选择器会查找类型为 'ant-calendar-input' 的元素,而您显示的元素类型为 'input' 且 class 共 'ant-calendar-input' 个。匹配该元素的有效 CSS 选择器类似于

find('input.ant-calendar-input').set('01/01/2022')

也就是说,您声称这是一个日历输入,但输入元素只是一个文本输入。我假设这意味着您正在使用某种绑定到 input 元素的 JS 小部件,因此可能隐藏了原始输入。如果是这种情况,那么您将需要与小部件生成的元素进行交互(就像用户必须那样),而不是直接与输入元素交互