Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.01.2021, 01:52
Новичок на форуме
Отправить личное сообщение для The_Immortal Посмотреть профиль Найти все сообщения от The_Immortal
 
Регистрация: 15.01.2021
Сообщений: 6

Скрипт выбора 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'));


Подскажите, пожалуйста, что я делаю не так?..

Спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 15.01.2021, 02:02
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от The_Immortal
getElementByValue
где почитать про это?
Ответить с цитированием
  #3 (permalink)  
Старый 15.01.2021, 02:07
Новичок на форуме
Отправить личное сообщение для The_Immortal Посмотреть профиль Найти все сообщения от The_Immortal
 
Регистрация: 15.01.2021
Сообщений: 6

рони, да до "этого" вообще дело не доходит - radiobutton не выбирается
Ответить с цитированием
  #4 (permalink)  
Старый 15.01.2021, 02:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от The_Immortal
выбрать "радио" и кликнуть по кнопке.
document.querySelector('[name="thisradio"][value="123"]').checked = true;
document.querySelector('[value="Запустить"]').dispatchEvent(new MouseEvent('click'));
Ответить с цитированием
  #5 (permalink)  
Старый 15.01.2021, 02:40
Новичок на форуме
Отправить личное сообщение для The_Immortal Посмотреть профиль Найти все сообщения от The_Immortal
 
Регистрация: 15.01.2021
Сообщений: 6

рони, благодарю за подсказку, но не сиё робит...

Хотя если открыть консоль браузера, то срабатывает...

Последний раз редактировалось The_Immortal, 15.01.2021 в 02:45.
Ответить с цитированием
  #6 (permalink)  
Старый 15.01.2021, 03:51
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,491

@run-at      document-start
тут лишнее. Код запускается до того как какие-либо кнопки появятся в документе.
__________________
29375, 35
Ответить с цитированием
  #7 (permalink)  
Старый 15.01.2021, 17:40
Новичок на форуме
Отправить личное сообщение для The_Immortal Посмотреть профиль Найти все сообщения от The_Immortal
 
Регистрация: 15.01.2021
Сообщений: 6

Aetae, большое спасибо!



Сообщение от рони
document.querySelector('[value="Запустить"]').dispatchEvent(new MouseEvent('click'));
Почему-то эта кнопка срабатывает не так, как если кликать по ней. По коду выше выдается страница, где сообщается, что radiobutton не выбран... Если же вручную щелкнуть, то всё нормально срабатывает. Можно ли как-то запустить то, что указано на самой кнопке, т.е. вот это:
onclick="send(); return false;"
?

Последний раз редактировалось The_Immortal, 15.01.2021 в 17:43.
Ответить с цитированием
  #8 (permalink)  
Старый 15.01.2021, 18:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

The_Immortal,
send(); вместо всей строки
Ответить с цитированием
  #9 (permalink)  
Старый 16.01.2021, 00:23
Новичок на форуме
Отправить личное сообщение для The_Immortal Посмотреть профиль Найти все сообщения от The_Immortal
 
Регистрация: 15.01.2021
Сообщений: 6

рони, я же правильно понял:
// ==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, 16.01.2021 в 00:31.
Ответить с цитированием
  #10 (permalink)  
Старый 16.01.2021, 00:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

The_Immortal,
ну попробуйте кликнуть дважды
document.querySelector('[name="thisradio"][value="123"]').dispatchEvent(new MouseEvent('click'));
document.querySelector('[value="Запустить"]').dispatchEvent(new MouseEvent('click'));
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
передача текста в textarea в зависимости от выбора radiobutton AndreiN Общие вопросы Javascript 4 07.02.2016 23:34
Скрипт случайного выбора при загрузке страницы dzhigora Общие вопросы Javascript 6 30.09.2012 00:44
скрипт для выбора серий и сезонов vk Evkliptik Общие вопросы Javascript 0 23.09.2012 16:10
скрипт выбора языка страницы не работает в ie savva jQuery 0 13.04.2011 11:05
Пользовательский скрипт для выбора option в select по умолчанию justalittleperson Элементы интерфейса 1 04.10.2010 06:13