jQuery.Ajax() の書き方まとめ
すぐ書き方を忘れるので、よく使うかたまりを置いておく。
jQuery 1.4 系までは success
・error
・complete
プロパティを使う。1.8 系以降は非推奨になっている。
$.ajax({
type: "GET",
dataType: "html",
url: "./content.html",
success: function(response, textStatus, jqXHR) {
// 成功時
},
error: function(jqXHR, textStatus, errorThrown) {
// 失敗時
},
complete: function(jqXHR, textStatus) {
// 成功時・失敗時共通
}
});
jQuery 1.5 系からは done()
・fail()
・always()
メソッドを使う。
$.ajax({
type: "GET",
dataType: "html",
url: "./content.html",
}).done(function(response, textStatus, jqXHR ) {
// 成功時
}).fail(function(jqXHR, textStatus, errorThrown) {
// 失敗時
}).always(function(jqXHR, textStatus ) {
// 成功時・失敗時共通
});
「jqXHR」は1.5から返却されるようになったオブジェクトで、1.4.xまでの「XMLHttpRequest」と違い、Promiseインターフェースというものを備えていて、これによりdoneやfailによるコールバック登録が行えるようになっています。
jQuery XMLHttpRequest (jqXHR) object
ってことらしい。Deferred とか Promise とかがよく分かっていないけど、「あれやったらこれやる」という処理を、インデントを深くすることなく書けるようになるってことみたい。