Как вызвать функцию jQuery только при условии, что форма валидна?
У меня есть функция jQuery, связанная с кнопкой отправки формы, которая выглядит следующим образом:
$(function () {
$('#signupform').submit(function () {
alert('test');
});
});
Однако она срабатывает независимо от того, валидна форма или нет. Моя модель оформлена с помощью различных аннотаций данных, и клиентская валидация работает хорошо, но я хочу, чтобы эта функция jQuery срабатывала только в случае успешной валидации формы. Как мне это сделать?
EDIT: Для уточнения, я использую аннотации данных MVC + неприметный javascript jQuery для обработки клиентской валидации. У меня нет собственных написанных routin для валидации на JavaScript. Встроенная валидация jQuery отлично справляется с задачей, но мне просто нужно понять, как получить результаты этой валидации в виде булевого значения в моей функции.
1 ответ(ов)
Если вы используете jQuery Validate с непринужденной проверкой, вы можете сделать следующее:
$(function () {
$('#signupform').submit(function () {
if ($(this).valid()) {
alert('Форма валидна');
}
});
});
В данном примере мы создаём обработчик события submit
для формы с идентификатором signupform
. При отправке формы проверяется её валидность с помощью метода valid()
. Если форма валидна, появляется предупреждение с сообщением "Форма валидна". Убедитесь, что у вас подключены необходимые скрипты jQuery и jQuery Validate, прежде чем использовать данный код.
Как перенаправить на другую веб-страницу?
Прокрутка к элементу с использованием jQuery
Как определить нажатие клавиши Esc?
Как получить данные формы с помощью JavaScript/jQuery?
Как выполнить код после сброса HTML-формы с помощью jQuery?