Скрипт выбора radiobutton и клик по кнопке (Greasemonkey)
Всех приветствую!
Прошу простить, если пишу не тут, просто не нашёл более подходящего форума для данного вопроса... Пытаюсь написать Greasemonkey-скрипт, который должен ставить true для определенного radiobutton'а и далее кликать по определенной кнопке (хотя она на странице единственная). После успешной операции открывается другая страница, после чего надо вернуться на предыдущую и всё заново повторить (выбрать нужное "радио" и кликнуть по кнопке) - т.е. организовать цикл. До возврата на предыдущую страницу и цикл я пока не дошёл, т.к. банально не могу выбрать "радио" и кликнуть по кнопке. <input type="radio" name="thisradio" value="123"> <input type="submit" onclick="send(); return false;" value="Запустить"> Мои попытки: // ==UserScript== // @name Скрипт БезИмени 648414 // @version 1 // @grant GM_openInTab // @grant unsafeWindow // @run-at document-start // ==/UserScript== waitForKeyElements ("input[name='thisradio'][value='123']", selectRadioButton, true); function selectRadioButton (jNode) { jNode.prop ('checked', true); } //$("input[name='thisradio'][value='123']").prop ('checked', true); document.getElementByValue("Запустить").dispatchEvent(new MouseEvent('click')); Подскажите, пожалуйста, что я делаю не так?.. :-? Спасибо! |
Цитата:
|
рони, да до "этого" вообще дело не доходит - radiobutton не выбирается :(
|
Цитата:
document.querySelector('[name="thisradio"][value="123"]').checked = true; document.querySelector('[value="Запустить"]').dispatchEvent(new MouseEvent('click')); |
рони, благодарю за подсказку, но не сиё робит... :(
Хотя если открыть консоль браузера, то срабатывает... |
@run-at document-startтут лишнее. Код запускается до того как какие-либо кнопки появятся в документе. |
Aetae, большое спасибо!
Цитата:
onclick="send(); return false;"? |
The_Immortal,
send(); вместо всей строки |
рони, я же правильно понял:
// ==UserScript== // @name Скрипт БезИмени 648414 // @version 1 // @grant unsafeWindow // @grant GM_openInTab // ==/UserScript== document.querySelector('[name="thisradio"][value="123"]).checked = true; send();? Так нужный radio выбирается, но кнопка не срабатывает... Пробовал так: // ==UserScript== // @name Скрипт БезИмени 648414 // @version 1 // @grant unsafeWindow // @grant GM_openInTab // ==/UserScript== document.querySelector('[name="thisradio"][value="123"]).checked = true; send(); return false;- тоже не хочет :( А из-под консоли send(); срабатывает как надо... |
The_Immortal,
ну попробуйте кликнуть дважды document.querySelector('[name="thisradio"][value="123"]').dispatchEvent(new MouseEvent('click')); document.querySelector('[value="Запустить"]').dispatchEvent(new MouseEvent('click')); |
Часовой пояс GMT +3, время: 07:26. |