#watir #browser-automation #watir-webdriver
#watir #автоматизация браузера #watir-webdriver
Вопрос:
В скрипте 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
Ответ №1:
если использование .set не приводит к тому, что ваш код работает не так, как вы ожидали, затем изучите исходный код, а затем попробуйте использовать .fireEvent для запуска события, которое должно запустить скрипт, который необходимо выполнить.
В этом случае я бы попробовал
ie.checkbox(:id => "check_asm0option0").fireEvent('onChange')
такой подход, как правило, немного более органичен и проще, чем пытаться вызвать скрипт вручную