JavaScript - форма автоматической отправки
Я пытаюсь автоматически отправить (логин) форму (данные запоминаются браузером) через JavaScript на одной конкретной веб-странице. Мне удалось отправить тестовую форму, которую я сделал на своем компьютере очень легко, используя это:
document.forms["formID"].submit();
Но когда я пробую это на странице, это терпит неудачу. Я запускаю JavaScript на странице от Greasemonkey, и он работает нормально, запускаю оповещения и т. Д., Но отправка не работает. Веб-страница: http://plusklub.hteronet.ba/Login
Я пытался W8 для загрузки с этой частью кода
document.addEventListener("DOMContentLoaded", function(event) {
document.forms["aspnetForm"].submit();
});
Также использовал этот код из верхнего комментария по этому вопросу. Форма автоматической отправки с использованием JavaScript. Ошибка означает, что ничего не происходит.
Несколько вещей, которые я попробовал:
console.log("test1");
document.addEventListener("DOMContentLoaded", function(event) {
console.log("test2");
});
console.log("test3");
window.onload = function () {
console.log("test4");
}
}
console.log("test5");
var fo=document.getElementById("aspnetForm");
console.log(fo);
var bu=document.getElementsByClassName("button");
console.log(bu);
bu.click();
setTimeout(function(){ console.log("test6"); }, 3000);
Выходные данные следующие:
test1helloworld.user.js:13:3
test3helloworld.user.js:17:3
test5helloworld.user.js:22:3
<form name="aspnetForm" method="post" action="/Login?ReturnUrl=http://plusklub.hteronet.ba/" id="aspnetForm">helloworld.user.js:24:3
HTMLCollection [ <input#ctl04_ctl02_btnSubmit.button> ]
1 ответ
К сожалению, мне не хватает скорости, чтобы добавить комментарий, поэтому я собираюсь попробовать свой шанс.
Обычно вам нужно подождать загрузки страницы, прежде чем вызвать подобное событие, которое предположительно window.load
или же onload
свойство события в <body>
элемент должен работать.
Я бы порекомендовал создать функцию для вызова через onload
событие, где вы можете попытаться получить информацию о пользователе (логин и пароль), если работает, то можете добавить свой .submit()
позвонить под try...catch
обработка исключений, чтобы проверить, вызывает ли браузер ошибку для дальнейшей отладки. После этого это может помочь вам понять, что происходит с вашим кодом, чтобы он не работал должным образом.
Извините, чтобы не быть настолько точным в ответе, чтобы помочь вам в этом, но я надеюсь пролить свет на вашу проблему.