Dalla documentazione di JQuery
Gli oggetti jqXHR restituiti da $.ajax()
jQuery 1.5 implementano l'interfaccia Promise, fornendo loro tutte le proprietà, i metodi e il comportamento di una Promessa (vedi Oggetto differito per ulteriori informazioni). Questi metodi accettano uno o più argomenti di funzione che vengono chiamati al termine della $.ajax()
richiesta. Ciò consente di assegnare più callback su una singola richiesta e persino di assegnare callback dopo il completamento della richiesta. (Se la richiesta è già completa, il callback viene attivato immediatamente.) I metodi Promise disponibili dell'oggetto jqXHR includono:
jqXHR.done(function( data, textStatus, jqXHR ) {});
Un costrutto alternativo all'opzione callback riuscita, fare riferimento deferred.done()
per i dettagli di implementazione.
jqXHR.fail(function( jqXHR, textStatus, errorThrown ) {});
Un costrutto alternativo all'opzione di callback dell'errore, il .fail()
metodo sostituisce il metodo obsoleto .error (). Fare riferimento a deferred.fail () per i dettagli sull'implementazione.
jqXHR.always(function( data|jqXHR, textStatus, jqXHR|errorThrown ) { });
(aggiunto in jQuery 1.6) Un costrutto alternativo all'opzione di callback completa, il .always()
metodo sostituisce il .complete()
metodo deprecato .
In risposta a una richiesta corretta, gli argomenti della funzione sono gli stessi di .done()
: data, textStatus e l'oggetto jqXHR. Per richieste non riuscite, gli argomenti sono gli stessi di .fail()
: l'oggetto jqXHR, textStatus ed errorThrown. Fare riferimento a deferred.always()
per i dettagli di implementazione.
jqXHR.then(function( data, textStatus, jqXHR ) {}, function( jqXHR, textStatus, errorThrown ) {});
Incorpora la funzionalità dei metodi .done()
e .fail()
, consentendo (a partire da jQuery 1.8) di manipolare la Promessa sottostante. Fare riferimento a differito .then()
per i dettagli di implementazione.
Deprecazione Avviso: Il jqXHR.success()
, jqXHR.error()
e jqXHR.complete()
callback vengono rimossi come di jQuery 3.0. È possibile utilizzare
jqXHR.done()
, jqXHR.fail()
e jqXHR.always()
invece.
success:
/.done()
. Ad esempio èsuccess:
appena implementato come il primo in.done()
questi giorni?