Ho il seguente codice per la gestione degli errori jQuery AJAX predefinito:jQuery.ajaxSetup: errore di override con statusCode
$.ajaxSetup({
error : function(jqXHR, textStatus, errorThrown) {
alert("Error: " + textStatus + ": " + errorThrown);
},
statusCode : {
404: function() {
alert("Element not found.");
}
}
});
Tuttavia, quando 404 accade, entrambe le funzioni sono upcalled: prima errore, quindi statusCode , quindi vedo 2 avvisi consecutivi.
Come impedire questo comportamento e ottenere errore richiamata solo se statusCode non è stato upcalled?
Rimuovendo statucCode.404? –
No-no. Voglio un messaggio specifico in caso di 404, e quello predefinito altrimenti. – weekens
Sono con te @weekens. La mancanza di un 'else' sulle voci statusCode, o l'assenza di questo, un modo per chiamare prima il gestore statusCode e consentirgli di sopprimere il gestore di errori generico se lo desidera, rende l'opzione statusCode intera IMO inutile. È utilizzabile solo se si hanno voci di statusCode per ogni possibile codice di errore, non ragionevole. Spero che la gente di jQuery riconsideri questa architettura. – enigment