Eranius ha scritto:
E qui la domanda: conviene fare un chiamata $.ajax sincrona all'apertura del pop-up oppure meglio una chiamata $.ajax asincrona all'apertura della pagina e tenere in una variabile javascript l'elenco delle <option> dei vari select del form?
Le
chiamate sincrone sono ormai
deprecate, ovvero non dovrebbero essere utilizzate: non puoi fare affidamento sulla velocità con cui ottieni la risposta, che potrebbe richiedere anche diversi secondi, e questo comporterebbe un effetto di "blocco" totale del browser e/o (ancora peggio) del dispositivo mobile (scenario in cui il problema viene tollerato ancora meno).
La modalità sincrona è disponibile per compatibilità all'indietro (diciamo "per grazia ricevuta") nella libreria
JQuery, ma se utilizzi framework più evoluti, tipo
Angular, non è nemmeno più una opzione viabile.
In breve, meglio
evitare le chiamate sincrone e
abituarsi alle chiamate asincrone da subito (anzi è già tardi), utilizzando tutti gli strumenti generalmente disponibili (es. callback,
Promise, ecc.) quando è necessario sequenziare delle istruzioni a fronte del completamento di una chiamata, gestire gli errori in modo strutturato e così via.
Ciao!