2016-06-16 9 views
0

フォームを検証するためにjQuery Validateを使用しているフォームがあります。私は問題に遭遇した。フォームは2回検証されています。私の変数は、「のisValid」検証をトリガーボタンがタイプボタンの下jQuery Validate:フォームが2回検証されています

<button type="button" name="submit" id="submit" vclass="btn btn-default">Submit</button>

ルールを持っていたJavaScriptです

後二回コンソールに記録されますユーザに表示されるメッセージとを含む。また、ボタンのクリックイベントも含まれます。

$(function() { 
$("#createUser").validate({ 
    rules: { 
     FirstName: "required", 
     email: { 
      required: true, 
      minlength : 2 
     }, 
     zipCode: { 
      required: true, 
      maxlength : 5 
     }, 
     Telephone: { 
      required: function (element) { 
       return $('#options option:selected').val() != "1"; 
      }, 
      maxlength : 12 
     }, 
     options: { 
     required: true, 
     notEqual: "1" 
     } 
    }, 
    messages: { 
     FirstName: "Please specify your first name", 
     email: { 
      required: "This email field is required.", 
      minlength : "email had to have a min length of 2." 
     }, 
     zipCode: { 
      required: "Zip code is a required field.", 
      maxlength : "zip code cannot be more than 5 characters." 
     }, 
     Telephone: { 
      required : "Telephone is a required field.", 
      maxlength : "Phone number has to have a max length of 12 characters." 
     }, 
     options: { 
      required: "Option is a required field", 
      notEqual: "Select a different option" 
     } 
    } 
    }); 

jQuery.validator.addMethod("notEqual", function (value, element, param) { 
    return this.optional(element) || value != param; 
}, "Please specify a different (non-default) value"); 


    $('#submit').on('click', function() { 
    isValid = $('#createUser').valid(); 
    console.log(isValid); 
    }); 
}); 

私は二度タイプではなく、送信ボタンを持つとしなければならない検証されているフォームに関連する発見した問題のほとんど。また、私はJavaScriptファイル内のどこにでもsubmitを呼び出しません。私はここで何が欠けていますか?

+0

私の推測では、アクションがフィドルでtwice.Reproduceバインドされていると私はあなたの場合はより多くの –

+1

を与えるだろうということですルールが別のjsにある場合は、スクリプトが2度参照されていないことを確認してください。 –

+0

@REDEVI_が問題でした。自分のバンドルにそのフォルダを含めます。次に、JavaScriptファイルへの参照を追加して、フォルダーがバンドルにも含まれていることを忘れてしまいました。あなたはあなたのコメントを回答に変更することができ、私はそれを解決済みとしてマークします。 –

答えて

1

ルールが別々のjsである場合、スクリプトは二回参照されていないことを確認し、

関連する問題