如何在从 "execute_script" 返回的 "Selenium::WebDriver::Element" 实例上调用 Capybara 输入 `.set` 方法?

How do I call the Capybara input `.set` method on the "Selenium::WebDriver::Element" instance returned from "execute_script"?

我用的是水豚
我调用 execute_script 来执行 JS 代码 returns 一些数据包括 DOM 个节点。
其中一些节点是 <input>,我需要在它们上调用 .set,就像我通常在 find("input").

搜索它们时所做的那样

但我明白了

NoMethodError Exception: undefined method `set' for #<Selenium::WebDriver::Element:

因为它不是 Capybara::Node::Element class。

我能否以某种方式将元素转换为 Capybara::Node::Element class 以便能够调用该方法,或者我应该做其他事情吗?

你不应该使用 execute_script 到 return 东西。如果您在 returning 项目时使用 evaluate_script,它们应该自动包装