web-dev-qa-db-ja.com

jQueryのajax成功コールバックでは、textStatusが「成功」しないのでしょうか。

documentation には、error()コールバックが発生した場合にtextStatusが発生する可能性のある値のリストがあります( "timeout"、 "error"、 "notmodified"、 "parsererror")がsuccess()イベントには何も指定されていません。

success()コールバックに渡すことができる「success」以外の値はありますか?これはどこかに文書化されていますか?

22
Robert

Successcompleteここ に記載されています。どのtextStatusが関数に渡されるかを心配する必要はありません。すべて、自動的に処理されます。成功関数は、呼び出しが成功したとき/成功した場合に呼び出され、completeは他のすべての最後に呼び出されます。

そこで、私が取り組んでいるものの例として、ページのセクションをクリックするとトリガーされる3つの関数をチェーンしました。divがフェードアウトし、それが完了するとajax呼び出しが実行されます。成功関数はdivのコンテンツを更新し(フェードアウトしている間)、完全な関数はdivでfadeInを呼び出します。つまり、新しいコンテンツでフェードアウト、更新、フェードインします。

7
Alex Zylman

成功は成功時にのみ呼び出すことができます。したがって、簡単な答えはノーです。

Ajaxの動作に関係なく、Completeは常に実行されます。したがって、completeは取得でき、値textstatusが返すことができるはずです。

フォーラムで、textstatusはこれらの値のいずれかであることがわかりました

"timeout"
"error"
"notmodified"
"success"
"parsererror"

http://forum.jquery.com/topic/jquery-ajax-textstatus-documented

8
Forge

ドキュメント自体は表示されませんが、ソースで見つけることができます。これは気の利いたビューアです。

http://james.padolsey.com/jquery/#v=1.4&fn=jQuery.ajax

他の可能な値は「parsererror」と「notmodified」です。

3
Justin Force

ソースを見ると、notmodifiedは値である可能性がありますが、私はそれを見たことがありません。

2
Adam