ホームページ > 記事 > ウェブフロントエンド > jquery での Ajax イベントと get および post リクエストの説明
1. jQuery Ajax イベント
Ajax リクエストはいくつかの異なるイベントを生成し、これらのイベントをサブスクライブしてその中でロジックを処理できます。 jQuery には、ローカル イベントとグローバル イベントという 2 種類の Ajax イベントがあります。
ローカル イベントは、各 Ajax リクエスト中にメソッド内で定義されます。例:
$.ajax({ beforeSend: function(){ // Handle the beforeSend event }, complete: function(){ // Handle the complete event } // ... });
グローバル イベントは、各 Ajax リクエストによってトリガーされ、上記の getScript() スクリプトでロードされます。例はグローバル Ajax イベントです。グローバル イベントは次のように定義できます:
$("#loading").bind("ajaxSend", function(){ $(this).show(); }).bind("ajaxComplete", function(){ $(this).hide(); });
または:
$("#loading").ajaxStart(function(){ $(this).show(); });
グローバル オプションを設定するだけで、特定のリクエストでグローバル イベントを無効にできます:
$.ajax({ url: "test.html", global: false,// 禁用全局Ajax事件. // ... });
2. jQuery.get(url, [data], [ callback], [type]): GET メソッドを使用して非同期リクエストを作成します
Parameters:
url (String): リクエストを送信する URL アドレス。
data (Map): (オプション) サーバーに送信されます データはキーと値のペアの形式で表現されます。
callback (関数): (オプション) ロードが成功したときのコールバック関数 (このメソッドは、Response の戻りステータスが成功の場合にのみ呼び出されます)。
type (文字列): (オプション) 公式の説明は次のとおりです: 送信されるデータのタイプ。実際には、クライアントによって要求されたタイプ (JSON、XML など) である必要があります
これは、複雑な $.ajax を置き換える単純な GET リクエスト関数です。コールバック関数は、リクエストが成功したときに呼び出すことができます。エラー時に関数を実行する必要がある場合は、$.ajax を使用します。サンプルコード:
$.get("./Ajax.aspx", {Action:"get",Name:"lulu"}, function (data, textStatus){ //返回的 data 可以是 xmlDoc, jsonObj, html, text, 等等. this; // 在这里this指向的是Ajax请求的选项配置信息; //alert(textStatus);//请求状态:success,error等等。 当然这里捕捉不到error,因为error的时候根本不会运行该回调函数 //alert(this); });
クリックしてリクエストを送信:
jQuery.get() コールバック関数の this は、Ajax リクエストのオプション設定情報を指します
3. ]、[type] ): POST メソッドを使用して非同期リクエストを作成します
パラメータ:
url (文字列): リクエストを送信する URL アドレス。
data (マップ): (オプション) サーバーに送信されるデータ、 Key/Value はキーと値のペアとして表されます。
callback (関数): (オプション) ロードが成功したときのコールバック関数 (このメソッドは、Response の戻りステータスが成功の場合にのみ呼び出されます)。
type (文字列): (オプション) 公式の説明は次のとおりです: 送信されるデータのタイプ。実際には、クライアントによって要求されたタイプ (JSON、XML など) である必要があります
これは、複雑な $.ajax を置き換える単純な POST リクエスト関数です。コールバック関数は、リクエストが成功したときに呼び出すことができます。エラー時に関数を実行する必要がある場合は、$.ajax を使用します。サンプルコード:
Ajax.aspx:
Response.ContentType = "application/json"; Response.Write("{result: '" + Request["Name"] + ",你好!(这消息来自服务器)'}");
jQuery コード:
$.post("Ajax.aspx", { Action: "post", Name: "lulu" }, function (data, textStatus){ // data 可以是 xmlDoc, jsonObj, html, text, 等等. //this; // 这个Ajax请求的选项配置信息,请参考jQuery.get()说到的this alert(data.result); }, "json");
クリックして送信:
ここではリクエスト形式を「json」に設定しています:
リクエスト形式を「json」に設定した場合、ここでtime Response によって返される ContentType を Response.ContentType = "application/json"; に設定していない場合、返されたデータをキャプチャできません。
alert(data.result); Accept ヘッダーが「json」に設定されているため、ここで返されるデータは object であり、オブジェクトに変換するために eval() を使用する必要がないことに注意してください。
以上がjquery での Ajax イベントと get および post リクエストの説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。