JQuery apanha qualquer erro ajax

Eu gosto de apanhar qualquer excepção ajax, mas não gosto de mudar todas as minhas perguntas ajax. Há alguma maneira de mudá-lo por algum dinheiro?uma chamada do ajax como (sobrepor algum error manipulador)?

Author: Mariusz Jamro, 2013-08-01

5 answers

Pode usar os manipuladores de eventos globais ajax .ajaxError()

$( document ).ajaxError(function( event, jqxhr, settings, exception ) {
    if ( jqxhr.status== 401 ) {
        $( "div.log" ).text( "Triggered ajaxError handler." );
    }
});
 21
Author: Arun P Johny, 2013-08-01 09:22:21
Podes fazer uma coisa destas.
$(function() {
    $.ajaxSetup({
        error: function(jqXHR, exception) {
            if (jqXHR.status === 401) {
                alert('HTTP Error 401 Unauthorized.');
            } else {
                alert('Uncaught Error.\n' + jqXHR.responseText);
            }
        }
    });
});
Isto vai apanhar um erro em qualquer das tuas chamadas.
 11
Author: palaѕн, 2013-08-01 09:22:36

A função $.ajaxSetup() permitir-lhe-á especificar as opções globais para as chamadas Ajax. Tenha cuidado, contudo, dado que as outras chamadas para ajaxSetup() irão sobrepor as opções globais e as opções locais indicadas para o método ajax() irão sobrepor a configuração global.

Documentação

 2
Author: Kevin Bowersox, 2013-08-01 09:23:01

Tente usar .ajaxError() como um método global http://api.jquery.com/ajaxError/

 1
Author: Jordi, 2014-01-08 16:25:14

Para apanhar um código de estado 401 Basta adicionar

  $.ajaxSetup({
    statusCode: {
      401: function(err){
        console.log('Login Failed.', err.responseJSON);
        // or whatever...
      }
    }
  });
Para a tua Página antes da chamada do AJAX ser disparada.
 1
Author: Dave Sag, 2014-05-05 10:34:42