jQuery italia

Eventi AJAX Stampa E-mail
Le richieste AJAX producono una serie di eventi che possono essere catturati dall'utente. Importante è l'ordine di trasmissione di questi eventi, che perciò in quest'articolo affronteremo.
jQuery divide gli eventi AJAX in due tipi di eventi:
  • eventi locali: tali eventi sono riferiti ad una particolare chiamata AJAX e solitamente sono scritti come parametri della funzione $.ajax().

    Es:
    $.ajax({
    beforeSend: function(){
    // cosa fare quando avviene l'evento beforsend
    },
    complete: function(){
    // cosa fare quando la richiesta è completa
    }
    // ......
    });

  • eventi globali: quest eventi vengono trasmessi a tutti gli elementi del DOM, non ad uno particolare.

    Es:
    $("#loading").bind("ajaxSend", function(){
    $(this).show();
    }).bind("ajaxComplete", function(){
    $(this).hide();
    });

Ecco l'elenco completo di tutti gli eventi AJAX e nell'ordine in cui questi vengono trasmessi.
Gli eventi ajaxStart e ajaxStop interessano le chiamate AJAX tutte insieme, gli altri invece una singola chiamata.
  • ajaxStart (globale): questo evento è attivato quando una chiamata AJAX comincia e nessun'altra chiamata concorrente è in esecuzione;
  • beforSend (locale): questo evento è attivato prima che una chiamata AJAX cominci e permette di effettuare modifiche ad esempio agli headers dell'oggetto XMLHttpRequest;
  • ajaxSend (globale): evento attivato prima che la richiesta sia in esecuzione. Uguale a prima ma è un evento globale;
  • success (locale): evento attivato solo se la chiamata ha successo, cioè senza errori provenienti dal server o errori nei dati di ritorno;
  • ajaxSuccess(globale): equivalente dell'evento di prima, ma è un evento globale;
  • error (locale): evento attivato se e solo se avviene un errore;
  • ajaxError (globale): come error ma globale;
  • complete (locale): evento attivato quando una chiamata AJAX è completata, indipendentemente se con successo o con errore. Anche per chiamate sincrone.
  • ajaxComplete (globale): come complete, ma globale;
  • ajaxStop (globale): attivato quando non ci sono più richieste AJAX da processare.

Attenzione ad utilizzare bene gli eventi globali o quelli locali, a seconda delle chiamate di interesse.
Per maggiori dettagli rimandiamo alla guida ufficiale.
 

Chi è online

 17 visitatori online

Sondaggi

Ti piace questo sito ?