#javascript #submit #required
Есть форма с инпутом, который обьязателен для заполненияИ если через javascript сделать submit, то форма отправляется, без проверки на required document.getElementById("go").submit(); А если нажать на кнопку "Отправить" - тогда проверка есть, и не отправляет форму пока не заполнишь... Почему так происходит, почему js не проверяет поля формы? Chrome 57.0.2987.133 Firefox 52
Ответы
Ответ 1
При вызове метода .submit() проверка на валидность не осуществляется. Предполагается, что при ручной отправке это сделано самостоятельно. Потому не забываем вызывать метод .checkValidity() перед отправкой: let $form = document.getElementById('form'), $submitBtn = document.getElementById('submit'); $submitBtn.addEventListener('click', function() { if( $form.checkValidity() ) { $form.submit(); } else { // ваша обработка ошибок } }); Источник: Метод submitОтвет 2
Можно не вызывать событие submit, а имитировать событие нажатия кнопки, тогда проверка должна быть. С помощью jQuery это можно сделать так: $("#go input[type=submit]").click();
Комментариев нет:
Отправить комментарий