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);
Другие вопросы по тегам