Maison > Article > interface Web > Décomposer les différences entre async:false et async:true dans les requêtes Ajax
Je vais maintenant vous proposer un article détaillant les différences entre async:false et async:true dans les requêtes Ajax. Permettez-moi de le partager avec vous maintenant et de le donner comme référence pour tout le monde.
L'exemple est le suivant :
function test(){ var temp="00"; $.ajax({ async: false, type : "GET", url : 'userL_checkPhone.do', complete: function(msg){ alert('complete'); }, success : function(data) { alert('success'); temp=data; temp="aa"; } }); alert(temp); }
méthode checkPhone() dans UserLAction
public void checkPhone() throws IOException { this.getServletResponse().setContentType("text/html; charset=UTF-8"); this.getServletResponse().setHeader("Cache-Control", "no-cache"); PrintWriter out = this.getServletResponse().getWriter(); out.print("true"); }
async: false, (la valeur par défaut est true);
Lorsque async: false est synchrone, la requête Ajax dans la méthode test() verrouillera l'intégralité du navigateur,
Seulement après l'exécution de userL_checkPhone.do, d'autres opérations peuvent être effectuées.
Le résultat de l'exécution est donc alert('success'); alert('complete'); alert("aa");
Quand async: true, la requête ajax est asynchrone. Mais il y a un problème : la requête ajax dans test() et les opérations suivantes sont exécutées de manière asynchrone, donc lorsque userL_checkPhone.do n'a pas été exécuté, les opérations suivant la requête ajax ont peut-être été exécutées,
Donc le le résultat est alert('success'); alert('complete'); alert("00");
De cette façon, vous constaterez que alert("success") et alert(temp) sont exécutés presque simultanément, donc temp est la valeur initialisée temp = "00", pas temp="aa";
Ce qui précède est ce que j'ai compilé pour tout le monde, j'espère que cela sera utile à tout le monde à l'avenir.
Articles connexes :
Interaction des données Ajax et MySQL pour créer une fonction de forum de messages
Synchronisation Ajax et problèmes et solutions asynchrones
Réponse Ajax aux exemples de chaînes json et de tableaux json (tutoriel graphique)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!