Maison > interface Web > js tutoriel > le corps du texte

Décomposer les différences entre async:false et async:true dans les requêtes Ajax

亚连
Libérer: 2018-05-22 17:23:25
original
1642 Les gens l'ont consulté

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);
  }
Copier après la connexion

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");

  }
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!