JQuery отправить форму подтверждения
У меня есть следующая форма:
<form id="testForm" action="country_Save">
Country Name:<input type="text" id="countryName" />
<input type="submit" id='saveCountry' value="Add Country" />
</form>
и следуя JQuery для проверки текстового поля
$('#testForm')
.jqxValidator({ rules : [
{
input : '#countryName',
message : 'Country Name is required!',
action : 'keyup, blur',
rule : 'required'
}],
theme : theme
});
Как я могу использовать эту проверку, когда я отправляю форму?
3 ответа
Попробуйте это пожалуйста:
$('#testForm').on('submit', function() {
return $('#testForm').jqxValidator('validate');
});
Привязать функцию к submit
событие формы. Вернуть false
в этой функции, если любое из полей формы не проходит проверку.
Например:
$('form').on('submit', function() {
// do validation here
if(/* not valid */)
return false;
});
У проверки формы есть широкий набор библиотек Javascript и jQuery... Мое предложение - простой плагин jquery.com.
PS: jqxValidator
такое метод из фреймворка jQWidgets? если вам (читателю) не нужен такой тяжелый / сложный плагин, см. ниже чистый jQuery, иначе @Gajotres написал лучшее решение (!).
Использую только jQuery и базовый Javascript.
Для "библиотеки подключаемых модулей" и "написания собственных методов проверки" сначала проверьте, что вам нужно прямое использование jQuery.
Вот код, который делает все, что нужно в вопросе: проверка на размытие, keyup и "при отправке".
function validate(){
var cnv = $('#countryName').val();
if (!$.trim(cnv)) {
alert('Country Name is required!');
return false;
} else { return true; }
}
$('#testForm').submit(validate);
$('#countryName').bind('blur keyup', validate);