Ajax里的onreadystatechange的作用

2009-03-15    文章来源:    浏览次数: 3302
发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态,XMLHttpRequest对象提供了onreadyStateChange事件实现这一功能。这类似于回调函数的做法。
onreadyStateChange事件可指定一个事件处理函数来处理XMLHttpRequest对象的执行结果,如:
ajaxObj=createAjaxObject();
var url="/MyTodoes/FetchText?id="+id;
ajaxObj.open("Get",url,true);
ajaxObj.onreadyStateChange=changeTabCallBack;
ajaxObj.send(null);

onreadyStateChange事件是在readyState属性发生改变时触发的,readyState的值表示了当前请求的状态,在事件处理程序中可以根据这个值来进行不同的处理。 readyState有五种可取值0:尚未初始化,1:正在加载,2:加载完毕,3:正在处理;4:处理完毕。一旦readyState属性的值变成了4,就可以从服务器返回的响应数据进行访问了。
通常在事件中判断readyState的值是在请求完毕时才做处理,如:
function changeTabCallBack(){
if(ajaxObj.readyState==4){
// 下一步验证
}
}

Status存储了服务器端返回的Http请求响应代码,它表示请求的处理结果,常见响应代码的含义如右。
在Ajax开发中,最常用就是200这个响应码,代码如下:
function changeTabCallBack(){
if(ajaxObj.readyState==4){
if(ajaxObj.status==200){
// 服务端返回了正确数据,开始响应处理
}
}
}
Http状态码 含义
200 请求成功
202 请求被接受但处理未完成
400 错误请求
404 请求资源未找到
500 内部服务器错误

Ajax里的onreadystatechange的作用相关推荐

  1. [partial] C#里partial关键字的作用

    [partial] C#里partial关键字的作用 1. 什么是局部类型? C# 2.0 引入了局部类型的概念.局部类型允许我们将一个类.结构或接口分成几个部分,分别实现在几个不同的.cs文件中. ...

  2. HTML 文件里开头 Doctype 的作用是什么?

    HTML 文件里开头 Doctype 的作用 : (1) 声明位于文档中的最前面的位置,处于标签之前.  (2) 此标签可告知浏 览器文档使用哪种 HTML 或 XHTML 规范.  重点:告诉浏览器 ...

  3. 详解C盘Windows文件夹里重要文件的作用

    详解C盘Windows文件夹里重要文件的作用 在整个Windows操作系统中,最重要的莫过于"Windows"文件夹,对电脑进行任何操作几乎都有关.了解这里对于掌握整个系统的运作有 ...

  4. python库作用_python 里 certifi 库的作用

    python 里 certifi 库的作用 安装了certifi之后,和requests库一样也有一个cacert.pem,可以用编辑器打开cacert.pem,里面包含了很多可信任知名公司的证书/公 ...

  5. ajax里拼接标签属性规则,vue 标签属性数据绑定和拼接的实现方法

    在vue官网把文档扫了一遍后,就开始写网站项目了,没有设计,就百度里找了一个h5的助赢软件的网站把他copy下来,想想有点坏了,接着把内容改改吧. 首先开始做一个列表展示 vue实例好后,给对象添加默 ...

  6. ajax里绑定框,Select级联菜单,用Ajax获取Json绑定下拉框(jQuery)

    需求类似这样  ↓ ↓ ↓   --> 菜单A发生变化,动态取数据填充下拉菜单B. JS代码如下: $(function () { $("#TeamSelect").chan ...

  7. 关于ajax中的onreadystatechange

    先铺垫一下知识: readystate 属性存有 XMLHttpRequest 的状态信息,也就是代表着请求数据的过程,是由0~4代表,具体见(onreadystatechange) status:跟 ...

  8. jquery ajax 覆盖,jQuery Ajax,覆盖onreadystatechange处理程序

    我最近在愚弄一些Ajax轮询技术.但是,似乎我无法onreadystatechange从XMLHttpRequestFireFox(3.6.7)中的对象覆盖处理程序. 在跟踪为什么FF在尝试访问时引发 ...

  9. java里叹号的作用,感叹号的用法、作用与举例说明

    感叹号为标点符号的一种,用于句子结尾,表示惊讶.那么感叹号是如何使用的呢?以下是由小编整理关于感叹号的用法和作用的内容,希望大家喜欢! 感叹号的用法 感叹号表示感叹句末尾的停顿.感叹句和语气强烈的祈使 ...

最新文章

  1. Yii框架官方指南系列14——基础知识:开发流程
  2. 12.PHP_PDO数据库抽象层
  3. jsonp获取服务器数据的方式
  4. EJB通过ANT提高EJB应用程序的开发效率、无状态发展本地接口bean、开发状态bean...
  5. 判断Logger级别是否开启的方法
  6. 利用cookies让sweetalert只出现一次
  7. U-Mail邮件服务器详解邮件延时
  8. sqlite增删改查(一)及SqliteDev工具下载地址
  9. Ubuntu18.04安装Oracle11g
  10. Solidworks二次开发环境搭建(Net)
  11. #论文学习#第二篇:CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction
  12. 华为防火墙配置(防火墙NAT)
  13. C#毕设asp.net江山旅游网站管理系统(论文+源码)
  14. yolov5训练常见错误解决办法
  15. 三玖天下第一!让三玖陪你写代码(为VScode加入背景图片)
  16. 南京软件测试自学英语,南京软件测试培训班怎么样?南京软件测试培训班学什么?...
  17. Centos7英文操作环境下的中文输入
  18. 用python采集数据_python数据分析4之自动采集数据
  19. 仿网易蜗牛读书小程序
  20. 三菱PLC FX系列 结构化编程/FBD.4工位转盘带4个步 进,PLC程序有完整的注释,有威伦触摸屏程序,电气图纸,I/O表,电气BOM.

热门文章

  1. 【BLOG】流光映雪
  2. TestLink测试用例:Excel转换XML工具二实现代码
  3. hdu 1254(dfs+bfs+优先队列)
  4. NYOJ 30 Gone Fishing(贪心)
  5. 马尔科夫网络和一阶马尔科夫链
  6. CentOS下禁止防火墙
  7. JavaScript编码encode和decode escape和unescape
  8. visual C++学习杂谈1(extern、cosnt引用指针)
  9. mysqldump表损坏问题
  10. ▲教你如何轻易的做linux计划任务▲——小菜一碟