[jQuery] ajax通信結果を受けて、その次のタスクを実行する
[jqXHR – jQuery.ajax() | jQuery API Documentation]1 。 |
新たに分かった。 jQuery.ajax()
jQuery.get()
jQuery.post()
メソッドは、 jqXHR
という名前のオブジェクトを返し、以下のようにコードを記述することができるという。 以下は、jQueryの公式文書に出てくる例だ。 翻訳を付けたが、自信がなくて原文を併記した。
// リクエストを生成した直後にハンドラを割り当てる。(Assign handlers immediately after making the request,) // そして、この要求に対するjqxhrオブジェクトを覚えている。(and remember the jqxhr object for this request) var jqxhr = $.ajax( "example.php" ) .done(function() { alert("success"); }) .fail(function() { alert("error"); }) .always(function() { alert("complete"); }); // ここで他の作業をする。(perform other work here ...) // 上記の要求が成功したときの操作する別の関数を設定する。(Set another completion function for the request above) jqxhr.always(function() { alert("second complete"); });
上記のような方式のコードはjQuery 1.8以降で使用することができる。 それ以前のバージョンでは、他の方法で使用することができるようだがっかりしないで文書をチェックしてください。
ところで私も実使用をして見たのはいやなので、私は考えているように動作するかは、使用をしてみないとわかららしい。
- コメント機能はありません。コメントの代わりに[email protected]
にメールを送ってください。