Maison  >  Article  >  interface Web  >  Quelles sont les erreurs courantes lors de l’utilisation d’Ajax

Quelles sont les erreurs courantes lors de l’utilisation d’Ajax

php中世界最好的语言
php中世界最好的语言original
2018-04-03 14:56:571151parcourir

Cette fois, je vais vous montrer quelles sont les erreurs courantes lors de l'utilisation d'Ajax, et quelles sont les erreurs courantes notes lors de l'utilisation d'Ajax. Voici des cas pratiques, prenons un. regarder.

1. Il y a un problème avec l'instruction if else lorsque ajax envoie une requête.

var xhr = new XMLHttpRequest(); 
xhr.open("get",strUrl);<br>
<br>xhr.onreadystatechange = function(){   
<br><br>   
 if(xhr.readyState === 4){ 
<br><br><em id="mceDel">        
if(xhr.status ===200){   
console.log(xhr.responseText);      
}  
<br><br></em><em style="line-height: 1.5;" id="mceDel">
<em id="mceDel"><em id="mceDel"><em id="mceDel">    
}else </em></em></em></em><em style="line-height: 1.5;" id="mceDel"><em id="mceDel"><em id="mceDel">
<em id="mceDel"><em id="mceDel">{<br>    
console.log(xhr.status); }  
<br> }</em></em></em></em></em>
xhr.send();

À ce moment-là, deux 200 codes d'état ont été générés, puis xhr.responseText, le contenu obtenu, a été généré. C'était très étrange à l'époque. Je me demande d'où venaient ces deux 200 ?

J'ai essayé de publier beaucoup de contenu à ce moment-là, mais je n'ai toujours pas trouvé la raison. Le problème n'a été découvert que lorsque l'instruction else a été modifiée en console.log(xhr.readystate). À ce moment-là, la vérification de sortie était 2, 3 et le contenu obtenu a été obtenu. Ce n'est qu'alors que j'ai découvert la raison :

À partir du moment où xhr envoie une requête jusqu'à la fin de la requête, elle passera par 5 états. Les codes d'état sont 0, 1, 2, 3, 4 (ce qui est. la valeur de readystate). Chaque fois que l'état change, l'événement readystatechange sera déclenché et la fonction de traitement d'événement sera appelée. Lorsque le code d'état passe à 2, il appelle l'événement readystatechange, puis utilise l'instruction if/else

Il s'agit de readystate, évidemment pas 4, puis utilise l'instruction else pour afficher 2. Et ainsi de suite. , quand c'est 3 ou 4. Ensuite, appelez l'événement readystatechange et ne récupérez le contenu que si 4, la demande réussit et le contenu de la demande est renvoyé.

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

Comment ajax soumet-il un formulaire et implémente le téléchargement de fichiers

Ajax transmet les données au format json au arrière-plan. Comment gérer les erreurs

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!

Déclaration:
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