/ / Обработка на събитие за събиране на формуляри чрез jquery за валидиран формуляр (ненатрапчиво валидиране) - javascript, jquery, jquery-validate, ненатрапчиво валидиране

Обработване на събитие след обявяване на формуляр чрез jquery за валидиран формуляр (ненатрапчиво валидиране) - javascript, jquery, jquery-validate, ненатрапчиво валидиране

Трябва да се справя с подаването на формуляр и евентуално да блокира публикацията. пр:

$("#myForm").submit(function (){
if (someCondition)
return true //post;
else
return false //dont post
});

Тази част работи, но сега имам jquery.validate плъгин с jquery.validate.unobtrusive.

Искам тази част от кода да се изпълнява след (и само ако формулярът е валиден).

Някакви идеи?

Някои разяснения

Приставката за валидиране е приставката jquery.validate от bassistance Използвам Microsoft " ненатрапчив (който се доставя заедно с MVC3) в него. Мисля, че е в validationInfo функция в jquery.validate.unobtrusive.js, че работата трябва да се направи ...

Отговори:

1 за отговор № 1

Опитайте тази:

$("#myform").validate({
submitHandler: function(form) {
if (someCondition)
return true; //post
else
return false; //dont post
}
}
});

0 за отговор № 2

Не съм сигурен дали разбирам правилно въпроса ви, но погледнете submitHandler в приставката jQueryValidate:

Обратна връзка за обработка на действителното изпращане, когато формулярът е валиден. Получава формата като единствен аргумент. Заменя подразбиране.

http://docs.jquery.com/Plugins/Validation/validate


0 за отговор № 3

Благодарение на @Rory, постигнах това, което исках. Тъй като jquery.validator.unobtrusive обработва обаждането до jquery.validate и не осигурява начин да прехванете нищо (да, това е приставка на Microsoft ...), решението е да използвате submitHandler вариант, какъвто предложил Рори, но по пътя на setDefault метод:

   if (typeof ($.validator) != "undefined") {
$.validator.setDefaults({
submitHandler: function (form) {
if (someCondition)
return true; //post
else
return false; //dont post
}

});
}