$ajax()方法パラメータ詳細

5908 ワード

転載元:https://www.cnblogs.com/tylerdonet/p/3520862.html
jqueryのajaxメソッドのパラメータはいつも覚えられません.ここで記録してください.
 
1.url: 要求されるのはStringタイプのパラメータであり、(デフォルトは現在のページアドレス)送信要求のアドレスです.
2.type: Stringタイプのパラメータが要求されますが、要求方式(postまたはget)はデフォルトでgetとなります.他のhttp要求方法に注意してください.例えば、putやdeleteも使用できますが、一部のブラウザのみがサポートされています.
3.timeout: 要求タイムアウト時間(ミリ秒)をNumberタイプのパラメータで設定します.この設定は$ajaxSetup()メソッドのグローバル設定を上書きします.
4.async: Booleanタイプのパラメータが要求されます.デフォルトではtrueに設定されています.すべての要求は非同期です.同期要求を送信する場合は、このオプションをfalseに設定してください.なお、同期要求はブラウザをロックし、ユーザの他の操作は要求が完了するまで待つ必要があります.
5.cache: 要求されるのはBooleanタイプのパラメータで、デフォルトはtrue(dataTypeがscriptの場合、デフォルトはfalse)です.falseに設定すると、ブラウザキャッシュから要求情報が読み込まれなくなります.
6.ダタ: ObjectまたはStringタイプのパラメータが要求されます.サーバに送るデータです.文字列でない場合は、自動的に文字列書式に変換されます.get要求はurlに添付されます.この自動変換を防ぐために、プロcessDataオプションを確認できます.オブジェクトはkey/valueフォーマットでなければなりません.例えば、{foo 1:bar 1}foo 2:bar 2}は&foo 1=bar 1=bar 2=bar 2に変換されます.配列であれば、JQueryは自動的に異なる値で同じ名前に対応します.例えば{foo:[bar 1]、“bar 2”}は&foo=bar 1&foo=bar 2に変換されます.
7.dataType: Stringタイプのパラメータが要求されていますが、サーバから返ってくるデータの種類が期待されます.指定されていない場合、JQueryはhttpパッケージのmime情報からレスポンスXMLまたはレスポンスTextに自動的に戻り、フィードバック関数のパラメータとして渡されます.利用できるタイプは以下の通りです.XMLドキュメントに戻り、JQueryで処理できます.html:純粋なテキストHTML情報を返します.含まれるスクリプトラベルはDOM挿入時に実行されます.スクリプト:純粋なテキストJavaScriptコードを返します.結果は自動キャッシュされません.cacheパラメータが設定されていない限り.注意リモート要求時(同じドメインではない)には、すべてのpost要求がget要求に変わります.JSONデータを返します.JSONP形式です.SONP形式で関数を呼び出す場合、例えばmurl?calback=?JQueryは後の「?」を正しい関数名に自動的に置き換えて、コールバック関数を実行します.テキスト文字列を返します.
8.beforeSend:Functionタイプのパラメータが要求されています.送信要求の前に、XMLHttpRequestオブジェクトの関数を変更することができます.例えば、カスタムHTTPヘッダを追加します.beforeSendでfalseに戻ると、今回のajax要求はキャンセルされます.XMLHttpRequestオブジェクトは唯一のパラメータです.            function(XMLtpRequest){               this  //今回のajax要求時に渡されるoptionsパラメータを呼び出します.            }9.compplete:Functionタイプのパラメータが要求されています.完了後に呼び出すコールバック関数を要求します.パラメータ:XMLHttpRequestオブジェクトと成功要求タイプを記述する文字列.          Function(XMLHttpRequest、text Startus){             this   //今回のajax要求時に渡されるoptionsパラメータを呼び出します.          }
10.success:Functionタイプのパラメータが要求されています.成功後に呼び出すコールバック関数は二つのパラメータがあります.         (1)サーバから戻り、dataTypeパラメータに従って処理後のデータを行います.         (2)状態を表す文字列.         function(data,text Status){           //dataはxmlDoc、jsonObj、html、textなどかもしれません.            this //今回のajax要求時に渡されるoptionsパラメータを呼び出します.         }
11.error:Functionタイプのパラメータが要求されます.要求が失敗したときに呼び出す関数です.この関数は3つのパラメータがあります.すなわち、XMLttpRequestオブジェクト、エラー情報、捕獲されたエラーオブジェクト(オプション).ajaxイベント関数は以下の通りです.       function(XMLHttp Request、text Status、errorThrown){         //通常はtext StatusとerrorThrownの中の一つだけに情報が含まれています.          this  //今回のajax要求時に渡されるoptionsパラメータを呼び出します.       }
12 contentType:Stringタイプのパラメータが要求されています.情報をサーバに送信すると、コンテンツ符号化タイプはデフォルトでは「appication/x-wn-form-urlencoded」となります.このデフォルト値はほとんどのアプリケーションに適しています.
13.data Filter:Functionタイプのパラメータを要求して、Ajaxに返された元のデータを前処理する関数です.dataとtypeの2つのパラメータを提供します.dataはAjaxから返された元のデータです.typeはjQuery.ajaxを呼び出した時に提供されるdataTypeパラメータです.関数が返した値はjQueryでさらに処理されます.            function(data,type){               //処理後のデータを返します.                return data            }
14.data Filter:Functionタイプのパラメータを要求して、Ajaxに返された元データを前処理する関数です.dataとtypeの2つのパラメータを提供します.dataはAjaxから返された元データです.typeはjQuery.ajaxを呼び出した時に提供されるdataTypeパラメータです.関数が返した値はjQueryでさらに処理されます.            function(data,type){               //処理後のデータを返します.                return data            }
15.global:Booleanタイプのパラメータが要求されています.デフォルトはtrueです.グローバルajaxイベントをトリガするかどうかを示しています.falseに設定するとグローバルajaxイベントをトリガしません.ajaxStartまたはajaxStopは様々なajaxイベントを制御するために使用できます.
16.ifModified:Booleanタイプのパラメータが要求されています.デフォルトはfalseです.サーバデータが変更されたときだけ新しいデータを取得します.サーバデータの変更判断はLast-Maodifiedヘッダ情報に基づいています.デフォルト値はfalseです.つまりヘッダ情報を無視します.
17.jsonp:Stringタイプのパラメータが要求されています.jsong要求では、コールバック=?というGETやPOST要求のURLパラメータの「calback」部分を書き換えます.例えば、{jsonp:on JsonPLoad')は、「onJsonPLoad=?」をサーバーに送ることになります.
18.username:HTTPアクセス認証要求に応答するためのSteringタイプのパラメータが要求されるユーザ名.
19.password:HTTPアクセス認証要求のパスワードに応答するためのSteringタイプのパラメータが要求されます.
20.1 processData:要求はBooleanタイプのパラメータで、デフォルトはtrueです.デフォルトでは、送信されたデータは対象に変換されます(技術的には文字列ではありません).デフォルトの内容タイプに合わせて「appliation/x-wn-urlencoded」となります.DOMツリー情報または他の変換したくない情報を送るなら、falseに設定してください.
21.1 script Charet:要求はStringタイプのパラメータであり、要求時にdataTypeは「jsonip」または「script」であり、typeはGETである場合にのみ、強制的に文字セットを変更するために使用されます.通常はローカルとリモートのコンテンツ符号化は同時に使用されません.
ケースコード:
$(function(){
    $('#send').click(function(){
         $.ajax({
             type: "GET",
             url: "test.json",
             data: {username:$("#username").val(), content:$("#content").val()},
             dataType: "json",
             success: function(data){
                         $('#resText').empty();   //  resText       
                         var html = ''; 
                         $.each(data, function(commentIndex, comment){
                               html += '
' + comment['username'] + ':

'; }); $('#resText').html(html); } }); }); });
22.ちなみに$each()関数
:
$each()関数はJQueryオブジェクトのeach()メソッドとは異なり、JQueryオブジェクトを操作するのではなく、1つの配列またはオブジェクトを1つのパラメータとして、1つのコールバック関数を2つ目のパラメータとします.コールバック関数は、2つのパラメータを持ちます.1番目のオブジェクトのメンバーまたは配列のインデックス、2番目の変数または内容に対応します.
23.traditional: true :@ResponseBody@RequestMapping(value = "/box/changeLock")publicString changeLock(finalLong[] boxIds, finalintboxType) {  returnlocker_ChangeLockService.changeLock(boxIds, boxType);}trueに設定後  バックグラウンドが正しく配列を受信することができます.