Watir: Как я могу выполнить в сценарии watir определенную функцию javascript, вызываемую при выборе флажка?

В сценарии Watir после установки флажков во всплывающем окне я пытаюсь выполнить функцию javascript для добавления выбранных объектов в родительское окно.

То, что работает нормально до сих пор, это проверка флажка, но объект не добавляется в родительское окно, и я получаю следующую ошибку при выполнении сценария watir: in `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

person Anca    schedule 18.05.2011    source источник


Ответы (1)


если использование .set не приводит к тому, что ваш код работает так, как вы ожидаете, затем проверьте исходный код, а затем попробуйте использовать .fireEvent для запуска события, которое должно запускать сценарий, который необходимо выполнить.

В этом случае я бы попробовал

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

этот подход, как правило, немного более органичен и проще, чем попытка вызвать скрипт вручную.

person Chuck van der Linden    schedule 19.05.2011