【问题标题】:Watir: How can I execute in a watir script a specific javascript function called on select of a checkbox?Watir:如何在 watir 脚本中执行特定的 javascript 函数,该函数在选择复选框时调用?
【发布时间】:2011-08-28 10:48:36
【问题描述】:

在 Watir 脚本中,在我选中弹出窗口中的复选框后,我试图执行一个 javascript 函数来将选定的对象添加到父窗口。

到目前为止,工作正常的是复选框的检查,但对象未添加到父窗口,并且在执行 watir 脚本时出现以下错误: 在 `method_missing' 中:execScript (WIN32OLERuntimeError)

这是我的方法 - 请让我知道我可以使用什么其他方法

ie.checkbox(:id => "check_asm0option0").set 
ie.document.parentWindow.execScript("window.triggerOriginalChange(asm0option0, add);","JavaScript") 

tr class="tr_option" rel="asm0option0"
td class="td_check"
input id="check_asm0option0" type="checkbox" value="4dbb118ddca3244e2800003d" rel="asm0option0" name="ignore"
/td
td class="td_li"
li value="0" rel="asm0option0" test /li
/td
/tr

【问题讨论】:

    标签: watir browser-automation watir-webdriver


    【解决方案1】:

    如果使用 .set 不会导致您的代码按预期方式运行,请检查源代码,然后尝试使用 .fireEvent 触发应该触发需要执行的脚本的事件。

    在这种情况下,我会尝试

    ie.checkbox(:id => "check_asm0option0").fireEvent('onChange')
    

    这种方法通常比尝试手动调用脚本更有机、更容易

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-04
      • 1970-01-01
      • 2013-03-02
      • 1970-01-01
      • 2018-06-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多