Ajax犯的错误怎么处理-创新互联

这篇文章将为大家详细讲解有关Ajax犯的错误怎么处理,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

创新互联公司是一家专业提供双清企业网站建设,专注与成都网站设计、网站制作H5技术、小程序制作等业务。10年已为双清众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。

1, ajax 发送请求时状态判断 if else 语句问题。


var xhr = new XMLHttpRequest(); 
xhr.open("get",strUrl);

xhr.onreadystatechange = function(){   

     if(xhr.readyState === 4){ 

         if(xhr.status ===200){    console.log(xhr.responseText);       }  

     }else  {
     console.log(xhr.status); }  
 }
xhr.send();

当时输出了两个200 的状态码,然后才输出xhr.responseText, 获取到的内容。 当时很奇怪,不知道这两个200 是怎么来的?


当时尝试输出不少内容,但还是找不到原因。 只有到把else 语句中改为 console.log(xhr.readystate)才发现了问题,这时输出结查依次是2,3,获取到的内容。 这时才发现原因:


xhr 发送请求到请求结束,会经过5种状态,状态码依次是0,1,2,3,4(就是readystate 的值),状态每发生改变一次,就会触发readystatechange事件,调用事件处理函数。 当 状态码是变化到2时,它调用readystatechange 事件,然后走 if/else 语句,


这是 readystate 显然不是4,然后走else 语句 输出 2. 以此类推,3,4 的时候再调用readystatechange 事件, 只有4 时才走if 里面的内容,请求成功,返回请求内容。


关于“Ajax犯的错误怎么处理”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


网页名称:Ajax犯的错误怎么处理-创新互联
标题网址:http://hxwzsj.com/article/doisdj.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 重庆外贸网站建设 成都网站建设 网站建设推广 网站建设公司 成都企业网站建设 成都网站建设 重庆网站建设 手机网站设计 手机网站制作 成都企业网站设计 网站制作 成都品牌网站设计 app网站建设 网站建设公司 网站设计制作报价 自适应网站设计 成都定制网站建设 定制网站建设 成都网站设计公司 网站建设方案 手机网站制作 成都网站建设