Скрипт выбора 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, время: 10:37. |