Я отправляю форму, используя вызов ajax. Когда пользователь использует кнопку отправки в форме, это вызывает функцию sendForm()
. Функция предотвращает использование по умолчанию (отправка формы) и проверяет форму (для полей с required
), и если форма действительна, тогда выполняется вызов ajax.
Проблема в том, что форма содержит некоторые скрытые (display:none
) элементы, которые проверяются с помощью вызова resportValidity()
, и поэтому форма завершается ошибкой из-за скрытых элементов, которые не должны проверяться (ониотображается в зависимости от параметров предыдущего пользователя).
Ниже используемой функции sendForm()
:
function sendForm(e) {
$(e).preventDefault;
var form = document.getElementById('myForm');
if (form.reportValidity()) {
// form is valid, do ajax call..
}else{
alert("Form not valid");
}
}
Так что, когда это происходит form.reportValidity()
, я получаю false из-за "пустого" required
поля ввода из входов со стилем display:none
.
Как я могу просто сообщить Valid () элементы формы без display:none
? Спасибо!