Posso forçar o jQuery Deferred / Ajax para executar o manipulador de falhas após a resolução?
Um exemplo para deixar claro o que eu quero fazer. Isto é o que eu normalmente faria:
function success(data, status, jqxhr){
if ( data.error )
return failure(jqxhr, status, data.error);
// process data
}
function failure(jqxhr, status, err){
...
}
$.ajax( ... )
.done(success)
.fail(failure)
Existe alguma maneira, eu posso fazer isso apenas com funções anônimas, como assim?
$.ajax( ... )
.done(function(data, status, jqxhr){
if(data.error)
// what do i need to do here to jump in to the fail handler?
})
.fail(function(jqxhr, status, err){
...
})