.getJSON function()
を検出するにはどうすればよいでしょうか500 Internal Server error
。.error()
、リターンステータスをチェックする関数を追加しようとし
.complete(status)
ましたが、どれも機能していません。jQuery はエラーを無視しているようです。
質問する
4746 次
2 に答える
4
編集
このようなエラーをキャッチするセットアップ関数
jQuery Ajax エラー処理関数
$(function() {
$.ajaxSetup({
error: function(jqXHR, exception) {
if (jqXHR.status === 0) {
alert('Not connect.\n Verify Network.');
} else if (jqXHR.status == 404) {
alert('Requested page not found. [404]');
} else if (jqXHR.status == 500) {
alert('Internal Server Error [500].');
} else if (exception === 'parsererror') {
alert('Requested JSON parse failed.');
} else if (exception === 'timeout') {
alert('Time out error.');
} else if (exception === 'abort') {
alert('Ajax request aborted.');
} else {
alert('Uncaught Error.\n' + jqXHR.responseText);
}
}
});
});
このようにしようとすると呼び出されます
// jQuery AJAX Error Handler
$.ajax({
url: "test.php"
});
詳細については、この投稿を確認してください: jquery-ajax-error-handling-function
関数は、$.getJSON
必要なエラーを返しません。$.ajax
代わりに使用してください:
$.ajax({
url: 'url',
dataType: 'json',
success: function( data ) {
alert( "SUCCESS: " + data );
},
error: function( data ) {
alert( "ERROR: " + data );
}
});
詳細については、このようなエラー関数も試してください
error: function (request, status, error) {
alert(request.responseText);
}
于 2012-11-29T07:09:54.023 に答える
0
使いたく$.getJSON()
ない場合$.ajax()
$("#debug").ajaxError(function(event, xhr, opt, exception){
// do your things.
});
しかし、このハンドラーはすべての ajax エラーをキャッチします。したがって、実行中の ajax を処理する必要があります。を表示したくない場合はcss#debug
で設定してください。display: none
于 2012-11-29T07:16:29.520 に答える