Проверка JQuery: проверка, если форма проверена? - PullRequest
5 голосов
/ 23 июля 2011

Я хотел бы запустить функцию, если моя форма полностью проверена на в соответствии с моими определенными правилами (не показано ниже).

Приведенный ниже код не работает так, как мне бы хотелось, скорее всего, в зависимости от того, что функция success вызывается для каждого входа, а не для всей формы для всей формы.

Существуют ли обходные пути для получения глобального обратного вызова при успешном выполнении, когда полная форма проверяется правильно ?

$("#myForm").validate({

    success: function(label) {

        if ($("#myForm").valid()) {
            runMyFunction();
        }

    },

    rules: {
        //...
    }

});

Ответы [ 3 ]

2 голосов
/ 23 июля 2011
$("#myForm").validate({

    rules: {
        //...
    },
    success: function(label) {           

    },
   submitHandler: function(e) {
          e.preventDefault();
          runMyFunction();           
    }    
 });

REF: http://docs.jquery.com/Plugins/Validation/validate#toptions

Вы не должны сделать

if ($("#myForm").valid()) {
            runMyFunction();
        }

обратный вызов success вызывается только тогда, когда проверка от только runMyFunction()

0 голосов
/ 26 июля 2011

Я использовал эту модификацию для плагина проверки:

http://forum.jquery.com/topic/suggestion-for-validate-plugin

0 голосов
/ 23 июля 2011

вы можете использовать массовую валидацию livevalidation

пожалуйста, проверьте их API, он имеет массовый валидатор, который делает то, что вы точно хотите.

http://livevalidation.com/

http://livevalidation.com/documentation#LiveValidationMassValidate

Вы также можете использовать валидацию JQuery Bassistance http://docs.jquery.com/Plugins/Validation/valid

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...