onreadystatechange 用于指定XMLHttpRequest对象状态改变时的事件处理函数。
onreadystatechange属性的作用与按钮对象的onclick属性一样,它们都是事件处理属性。
即XMLHttpRequest是事件源,它可以引发readystatechange事件,当程序将一个函数引用赋给XMLHttpRequest对象的readystatechange属性;
如:xhr.onreadystatechange = processResponse;
processResponse函数即成为XMLHttpRequest对象的事件处理器,每次XMLHttpRequest对象的状态改变都会触发监听该事件的事件处理器,因此我们需要在事件处理器即函数中进行正当的判断来实现。
下表是XMLHttpRequest对象的几种状态:
状态码 | 定义 |
---|---|
0 | XMLHttpRequest对象还没有完成初始化 |
1 | XMLHttpRequest对象开始发送请求 |
2 | XMLHttpRequest对象的请求发送完成 |
3 | XMLHttpRequest对象开始读取服务器的响应 |
4 | XMLHttpRequest对象读取服务器响应结束 |
通常XMLHttpRequest 的状态值赋给 readyState 属性,通过它来判断是否向下进行。