Da documentação do JQuery
Os objetos jqXHR retornados pelo $.ajax()
jQuery 1.5 implementam a interface Promise, fornecendo a eles todas as propriedades, métodos e comportamento de uma Promise (consulte Objeto adiado para obter mais informações). Esses métodos usam um ou mais argumentos de função que são chamados quando a $.ajax()
solicitação termina. Isso permite atribuir vários retornos de chamada em uma única solicitação e até atribuir retornos de chamada após a conclusão da solicitação. (Se a solicitação já estiver concluída, o retorno de chamada será acionado imediatamente.) Os métodos Promise disponíveis do objeto jqXHR incluem:
jqXHR.done(function( data, textStatus, jqXHR ) {});
Uma construção alternativa à opção de retorno de chamada bem-sucedida, consulte os deferred.done()
detalhes da implementação.
jqXHR.fail(function( jqXHR, textStatus, errorThrown ) {});
Uma construção alternativa à opção de retorno de chamada de erro, o .fail()
método substitui o método .error () descontinuado. Consulte deferred.fail () para obter detalhes da implementação.
jqXHR.always(function( data|jqXHR, textStatus, jqXHR|errorThrown ) { });
(adicionado no jQuery 1.6) Uma construção alternativa à opção de retorno de chamada completa, o .always()
método substitui o .complete()
método obsoleto .
Em resposta a uma solicitação bem-sucedida, os argumentos da função são os mesmos de .done()
: data, textStatus e o objeto jqXHR. Para pedidos com falha, os argumentos são os mesmos de .fail()
: o objeto jqXHR, textStatus e errorThrown. Consulte os deferred.always()
detalhes da implementação.
jqXHR.then(function( data, textStatus, jqXHR ) {}, function( jqXHR, textStatus, errorThrown ) {});
Incorpora a funcionalidade dos métodos .done()
e .fail()
, permitindo (a partir do jQuery 1.8) a promessa subjacente ser manipulada. Consulte adiado .then()
para obter detalhes da implementação.
Deprecation Aviso: O jqXHR.success()
, jqXHR.error()
e jqXHR.complete()
chamadas de retorno são removidos a partir de jQuery 3.0. Você pode usar
jqXHR.done()
, jqXHR.fail()
e, jqXHR.always()
em seu lugar.
success:
/.done()
são definidas, se é que existem. Por exemplo, ésuccess:
apenas implementado como o primeiro.done()
nos dias de hoje?