2

jQuery.validate()を使用して、フォームを送信する前に検証しています。Ajax を使用してフォームを送信するようになったので、問題が発生しました。

注: jQuery フォーム プラグインは使用していません。それは明らかです:)

jQuery.validate() が起動されますが、フォームの送信も実行されます。

バリデーターがOKになるまでフォームを送信したくありません。これを達成する方法についての神の提案はありますか?

アップデート

私は答えを見つけました。submitHandler を使用する必要がありました。現在、すべての必須フィールドが正確に入力されている場合にのみ、フォームが送信されます。

方法は次のとおりです。

if( jQuery('#my_form').length > 0 ) {
  jQuery("#my_form").validate({
     rules: {
       brand_name: "required",
       brand_email: {email: true },
       brand_description: "required"
     },
       submitHandler: function() { processRegistration(jQuery("#my_form").attr("id"), jQuery("#my_form").serialize());  }
  });  


} 
4

1 に答える 1

1
jQuery('#registrationforms form').submit(function() {
  if (processRegistration(jQuery(this).attr("id"), jQuery(this).serialize())) {
    // do ajax thing
  };
  return false;
});
于 2009-09-25T08:50:36.190 に答える