2016-11-21 5 views
2

completeおよびerror関数のtextStatusというステータスコールバックパラメータが、jqXHRオブジェクトに定義されている文字列である理由はありますか?私はステータスが数値であることを期待しています(名前の他に、すでにパラメータが文字列であることが示唆されています)。なぜJQueryのステータスコールバックパラメータが数値ではなく文字列になっていますか?

+0

http://api.jquery.com/jquery.ajax/:*リクエストのステータス(「成功」、「変更なし」、「nocontent」、「エラー」、「タイムアウト」、「アボート」) * "** text * Status"と呼ばれる可能性が最も高いです** ** **数字ではないことを完全に明確にします。 –

+0

ステータス*番号*はjqXHRからすでに取得できます: 'XMLHttpRequest.status' –

+0

ありがとうございます。それは私が探していたものです! – 0xDECAFBAD

答えて

1

なぜ数値ですか?

jQueryが

  • nocontent
  • エラー
  • タイムアウト
  • 中止
  • parsererror
  • notmodified

    • 成功
    • textStatus引数に次の値を返します。

    これらは、あなたが間違っていないか、要求が成功したかを伝えるためのjQueryのカスタムメッセージです。

    404 Not Foundまたは403 Forbiddenのような、サーバーが送信するエラーは、一般的にjQueryによる正常なリクエストとみなされます。例えば、特定の時間後に要求がタイムアウトに達したとき

    カスタムエラーコードは、上記のjQueryによってスローされる、またはコンテンツはjQueryの等によって解析できなかった場合
    これらの文字列は、の一部ではありません元のXMLHttpRequestですが、便宜上jQueryによって追加されています。

    +0

    それは大いに説明します。ありがとうございました。私が初めてそれを見たのは、いくらか明確ではなかった。私は彼らが実際の要求ステータスを参照していると思った。 – 0xDECAFBAD

    関連する問題