1

フォームの送信が処理された後に呼び出される関数があります。私はJQuery1.8とjquery.validateを使用しています。

サーバーへの呼び出しをチェックして処理し、JSON成功コールバックを受信する次の関数があります。

<input type="submit" value="Continue" 
                      name="submit_first" onclick="verifyPge();" />

これは、ロードページを追加する必要があり、同じウィンドウにロードする必要がある関数です(JQueryロードページ)。この関数は、jquery.validateを使用してUIチェックを実行し、このverifyPge(に新しい関数を追加する必要があります。 ); フォームが新しいページをロードするように機能します。メソッドまたはアクションを使用することはオプションではなく、フォームIDを個別に保持するために検証が呼び出されます。
// JavaScriptドキュメント$()。ready(function(){

// validate signup form on keyup and submit
$("#yourInfo").validate({

    rules: {
        month: {
            required: true,
        },
        day: {
            required: true,
        },
        year: {
            required: true
        },

    },
    messages: {
        month: {
            required: "Please select the month you were born",
        },
        day: {
            required: "Please select the day you were born",
        },
        year: {
            required: "Please select the year you were born",
        },
        errorElement: "div"
    }
});

});

何か案は?基本的に、UI検証が完了し、フォームが処理された後、新しいページをロードしたいのですが、JQueryページロードを使用してそれを実行し、JqueryにAjaxを介してページを切り替えさせます。

4

1 に答える 1

0

サーバーのURLを必ず返してください

// document DOM ready
$(function() {

// validate signup form on keyup and submit
$("#yourInfo").validate({
  submitHandler: function(form){
    // submit the form via ajax
    $.post(
      // your script
      'script.php',
      // your form in a serialized way your server can understand
      form.serializeArray()[0], 
      // success function
      function(url){
        window.location.assign(url); // load the new URL
      }
    );
    return false;
  },
  rules: {
    month: {
        required: true,
    },
    day: {
        required: true,
    },
    year: {
        required: true
    },
  },
  messages: {
    month: {
        required: "Please select the month you were born",
    },
    day: {
        required: "Please select the day you were born",
    },
    year: {
        required: "Please select the year you were born",
    },
    errorElement: "div"
  }
});

});

jQuery検証プラグインはすでにフォーム送信を処理しているのでverifyPage()、送信ボタンに追加する必要はありません。submitHandlerフォームが検証された後、を使用して送信するのが適切な方法です。

于 2012-12-07T02:16:11.570 に答える