5

マルチステップ登録プロセスにjQueryFormWizard3.0.4プラグインを使用しています。組み込みのjQueryバリデータープラグインを使用します。これは、ステップからステップへと進むときに正常に機能します。編集:これは、validationEnabled:true、formOptions、validationOptionsをすでに使用しており、これらが機能していることを意味します。通常の機能の外でこれと同じ検証を実行する必要があります。

問題は、バリデーターを実行し、2つのポイントで手動でエラーを表示する必要があることです。私が持っている特別な分野のために、そしてAJAX提出の前に。私は次のことを試しましたが、何もしません:

$("#registrationForm").validate();  

フォームウィザードスクリプト(jquery.form.wizard-3.0.4.js)は、次の手順に進むときにこれを実行しているように見えます。

this.element.validate().focusInvalid();

だから私はこれを試しましたが、これも何もしません:

$("#registrationForm").element.validate().focusInvalid();

何か案は?

  1. 次のステップをクリックしたときに発生するのと同じ検証を実行するにはどうすればよいですか?
  2. 特定のフィールドのエラーを検証して表示する関数を呼び出すにはどうすればよいですか?
4

2 に答える 2

4

以下のサンプルコードはおそらくあなたのために働くはずだと思います。検証は、id="validate_form"のボタンまたは要素がクリックされたときにトリガーされます。これは基本的に、ユーザーが[次へ]をクリックしたときに(プラグインで)実行されるコードです。

    $(function(){
        $("#validate_form").click(function(){ // when the button is clicked...
            var wizard = $("#demoForm"); // cache the form element selector
            if(!wizard.valid()){ // validate the form
                wizard.validate().focusInvalid(); //focus the invalid fields
            }

        })
    })

1つの入力フィールドを検証するだけでよい場合は、次のコードを使用できます(この場合、id = "validate_email"のボタンをクリックします)。

    $(function(){
        $("#validate_email").click(function(){ // when the button is clicked...
            var wizard = $("#demoForm"); // cache the form element selector
            if(!wizard.validate().element( "#myemail" )){ // validate the input field
                wizard.validate().focusInvalid(); // focus it if it was invalid
            }

        })
    })

お役に立てれば。

/1月

于 2011-02-05T17:34:09.343 に答える
0

プラグインのドキュメントを見ましたか?セットアップには、フォームウィザードを定義するときにその種の検証を実行できるようにする簡単なスイッチがあります。

http://thecodemine.org/#_demoForm=first

次に、[オプション]をクリックし、[validationEnabled]を確認して検証を有効にしてから、[validationOptions]を確認してオプションを設定します。

于 2011-01-21T19:04:05.053 に答える