【问题标题】:Selenium JavaScript Executor returns null for .checked but works for .click()?Selenium JavaScript Executor 为 .checked 返回 null 但适用于 .click()?
【发布时间】:2016-12-17 00:54:35
【问题描述】:

我正在尝试确定某个元素是否已被检查。

此代码有效,它单击元素,但不返回任何内容。

js.executeScript("return arguments[0].click();", element);

此代码不起作用:

js.executeScript("return arguments[0].checked;", element);

此代码有效:

js.executeScript("document.querySelectorAll('[name=abc]')[0].checked");

我需要能够仅通过元素来确定是否检查了元素。

是的,element.isSelected() 在 selenium 中,但它不适用于此要求。

谢谢!

【问题讨论】:

  • 有趣,我希望在使用 java 的情况下,您的第二种方法实际上应该有效..
  • System.out.println(js.executeScript("return arguments[0].checked;", element));这打印空
  • 你是对的。我浪费了 4 个小时尝试了很多东西。哈哈。我有错误的元素路径。它在输入本身而不是复选框上。嗯。

标签: javascript java selenium


【解决方案1】:

这是正确的。

js.executeScript("return arguments[0].checked;", element);

我使用了错误的节点作为初始元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-20
    • 2015-06-11
    • 2016-09-09
    • 2016-04-16
    • 1970-01-01
    • 1970-01-01
    • 2015-06-09
    • 1970-01-01
    相关资源
    最近更新 更多