Страницы

Поиск по вопросам

пятница, 21 февраля 2020 г.

При form.submit() опускается проверка полей на required

#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();

Комментариев нет:

Отправить комментарий