Visualizzazione dei risultati da 1 a 4 su 4

Visualizzazione discussione

  1. #1
    Utente di HTML.it L'avatar di Azucchi
    Registrato dal
    Jul 2014
    Messaggi
    123

    ajax async: false vs. meccanismo delle callback

    Buongiorno a tutti
    A seguito di una funzione Ajax devo richiamare un'altra funzione Ajax per poi eseguire il metodo alert().
    Ho risolto mettendo async: false, per evitare l'esecuzione del metodo alert() prima della fine dell'esecuzione del metodo callajax.

    codice:
    success: function (data) {                                     
                               if (data==0) {                                                                                                                                        
                                     callajax(scope, id, exid);
                                     alert("Non sono permessi duplicati!");
                                   }
    }
    codice:
    function callajax(scope, id, exid) {
       $.ajax({
                    async: false,
                     ...
    
       });
    }
    L'alternativa è usare il meccanismo delle callback lasciando asincrona la chiamata ajax.
    codice:
    success: function (data) {                                     
                                if (data==0) {                                                                                                                
                                   callajax(scope, id, exid, function() {
                                                alert("Non sono permessi duplicati!");
                                   });
    }
    codice:
    function callajax(scope, id, exid, callback) {
       $.ajax({
                    async: true,
                     ...     
                    success: function (data) {
                     callback();
                    }
       });
    }
    Quale delle due strade è migliore percorrere secondo voi?
    Ultima modifica di Azucchi; 19-08-2014 a 11:14

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.