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 обработка исключений, чтобы проверить, вызывает ли браузер ошибку для дальнейшей отладки. После этого это может помочь вам понять, что происходит с вашим кодом, чтобы он не работал должным образом.

Извините, чтобы не быть настолько точным в ответе, чтобы помочь вам в этом, но я надеюсь пролить свет на вашу проблему.

Другие вопросы по тегам