据我所知,使用ajax处理错误结果的一种可能性如下:
$.ajax({
url: someUrl,type: 'POST',success: function(data) {},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);
}
}
});
或者使用statusCode以使其更易读:
$.ajax({
url: someUrl,statusCode: {
200: function(data) {
:
:
},401: function() {
:
:
},:
:
我的问题是:
是否可以使用statusCode并具有默认的fall-through?