JSONPを使用しているときにjQuery $.getJSON (またはdatatypeが'jsonp'に設定された$.ajax)エラーをキャッチするにはどうすればよいですか?
2023-10-19 18:42:22
質問
jQueryでJSONPを使用する際にエラーをキャッチすることは可能でしょうか?私は$.getJSONと$.ajaxの両方のメソッドを試しましたが、どちらも私がテストしている404エラーをキャッチすることはできません。以下は、私が試したことです(これらはすべて正常に動作しますが、失敗した場合を処理したいことに留意してください)。
jQuery.ajax({
type: "GET",
url: handlerURL,
dataType: "jsonp",
success: function(results){
alert("Success!");
},
error: function(XMLHttpRequest, textStatus, errorThrown){
alert("Error");
}
});
そしてまた
jQuery.getJSON(handlerURL + "&callback=?",
function(jsonResult){
alert("Success!");
});
また、$.ajaxErrorを追加してみましたが、これもうまくいきませんでした。
jQuery(document).ajaxError(function(event, request, settings){
alert("Error");
});
返信をありがとうございました。
どのように解決するのですか?
成功した結果を返さない JSONP リクエストは、成功または失敗のいずれのイベントもトリガーされないようで、良くも悪くもそれは明らかにデザインによるものです。
バグトラッカーを検索した結果、次のものがありました。 パッチ があり、タイムアウトコールバックを使って解決できる可能性があります。 参照 バグレポート#3442 . エラーを捕捉できない場合は、少なくとも成功するまでの適当な時間を待った後にタイムアウトさせることができます。
関連
-
[解決済み] jQueryを使って要素のIDを取得するにはどうすればよいですか?
-
[解決済み] jQueryでページを更新するにはどうすればよいですか?
-
[解決済み] jQueryで複数のクラスを持つ要素を選択するにはどうすればよいですか?
-
[解決済み] jQueryを使ったAjaxリクエストの中断
-
[解決済み] jQuery Ajax呼び出し後のリダイレクトリクエストを管理する方法
-
[解決済み] jQueryを使用してハイパーリンクのhref属性を変更する方法
-
[解決済み] jQueryでクッキーを設定/解除するにはどうすればよいですか?
-
[解決済み] どうすればjQueryに非同期ではなく、同期のAjaxリクエストを実行させることができますか?
-
[解決済み] URL/アドレスバーからJavascriptの関数を呼び出す
-
[解決済み] 各オブジェクトに?重複
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ExtJS 4のイベントハンドリングについて
-
[解決済み] 文字列がすべて同じ部分文字列で構成されているかどうかを調べるにはどうすればよいですか?
-
[解決済み] reactのrender関数でdynamic hrefを作成するには?
-
[解決済み] Chart.jsを使ってドーナツチャートの中にテキストを追加するには?
-
[解決済み] Javascript 空の配列の削減
-
[解決済み] 文字列とラベルのローカライズとグローバリゼーションのベストプラクティス【終了しました
-
[解決済み] JavaScriptで長い配列を小さい配列に分割する方法
-
[解決済み] HTML要素にスクロールバーがあるかどうかをチェックする
-
[解決済み] Chrome拡張機能:popup.htmlを強制終了させる
-
[解決済み] JavaScriptでDIVを表示・非表示にするには?