4

Jquery Ajaxを呼び出すときに、URLとともにクエリ文字列を渡すことができるかどうかを確認したいと思います。

例 :

    $.ajax({
           type: "POST",
           url: "index.php?task=addNewInfo",
           data: $('#regForm').serialize(),
           dataType: "json",
              .....
      });  

では、paramタスクからのクエリ文字列は正常に機能しますか?または私たちはそれを他の方法で行う必要がありますか?ありがとうございました。

4

3 に答える 3

9

データパラメータでタスクを送信します

data:"task=addNewInfo&" + $('#regForm').serialize()

これはPOSTメソッドを使用するためのものです。GETメソッドを使用する場合は、Arunのソリューションが正常に機能します。

于 2012-05-11T03:45:34.940 に答える
4

以下はうまくいくと思います

url : "index.php?task=addNewInfo&" + $('#regForm').serialize()

しかし、なぜフォーム値をクエリパラメータとして渡したいのですか?postリクエストはとにかくリクエストパラメータとして値を渡します。これらのパラメータはリクエスト本文を介して送信されるため、POSTリクエストタイプを使用しています。

于 2012-05-11T03:39:57.830 に答える
0

はい。クエリ文字列とリクエスト本文は、HTTPリクエストでは2つの異なるものです。jQueryは、GETリクエストのクエリ文字列でデータをラップします。これは、おそらく混乱の原因です。

  • GETリクエスト:本文(またはペイロード)は空で、URLのみがデータを保持します。
  • POSTリクエスト:あなたがしたようにurl-encodingで、またはjson-encodingで、あなたが好きなように本文を埋めてください
于 2014-01-04T12:41:09.460 に答える