ajax()
ajax()はAjaxを行うためのメソッドです。
元々は引数としてAjax設定を引き渡す書式でした。
$.ajax({...Ajax設定...})
jQuery1.5から次のように第一引数にurlを渡して、第2引数にAjax設定を渡す書式が追加され、返り値としてDefferdオブジェクトを返すようになりました。
$.ajax( url,{
...Ajax設定...
});
Ajax設定は次のようにプロパティやメソッドを指定したオブジェクトで設定ができます。
$.ajax({
//プロパティ
url:"ajax.json",
dataType: "json",
//メソッド
success : function(){
//do something
}
})
Ajax設定で利用できるプロパティは次のとおりです。
プロパティ名 | デフォルト | 説明 |
---|---|---|
accepts | dataTypeにより異なる | どのような種類のレスポンスが返ってくるかサーバのサーバーのリクエストヘッダーに追加します。 |
async | true | 非同期通信を行うかどうかの設定。同期通信を行いたい場合は「false」を指定します。。クロスドメイン通信時やdataTypeがjsonpの場合はこのオプションは反映されません。同期通信時にはサーバーへのリクエスト中はブラウザは全ての処理を一時中断しますので注意が必要です。 |
cache | true (dataTypeが ‘script’ か ‘jsonp’ の場合はfalse) |
Ajaxのレスポンスデータをキャッシュするかどうかを設定できます。 |
contents | レスポンスデータをどのようにパースするか正規表現により指定が可能です。 | |
contentType | ‘application/x-www-form-urlencoded; charset=UTF-8’ | サーバにデータを送信する際に利用するcontent typeを指定できます。 |
context | レスポンスデータがDOMオブジェクトの場合などにコンテキストを指定することができます。 |
Ajax設定で利用できるメソッドは次のとおりです。
メソッド名 | 説明 |
---|---|
beforeSend | Ajax送信前に実行したいメソッドが定義でき、送信ヘッダーの変更などが可能です。また、ここでreturn falseを返すことでAjax送信を中止することもできます。 |
complete | このメソッドはAjax表示リクエストが終了したタイミングで実行されす。(ただし、successとerrorの後)、このメソッドの引数ではjqXHRオブジェクトとリクエストのステータス(“success”, “notmodified”, “error”, “timeout”, “abort”, or “parsererror”)が利用できます。 jQuery 1.5から配列で複数の関数を定義できるようになりました。 |
jQuery 1.5.0で書式が追加されました
参考URL
jQuery.ajax() | jQuery API Documentation
登録日 : 2012年09月09日 最終更新日 : 2017年8月4日