AJAX——XMLHttpRequest对象主要属性和事件
2014-09-11 00:04
603 查看
readyState属性
有5个取值:0、1、2、3、4,表示HTTP请求的状态和服务器的响应。此属性的值一般不会递减,除非在正在进行的请求中调用了abort()或open()方法。理论上,每当这个属性的值发生变化时都会触发readyStateChange事件,但实际上,只有此属性改变为4时才会触发readyStateChange事件。readyState值 | 含义 |
0 | 初始值,XMLHttpRequest对象刚刚创建时,或刚调用了abort()方法后 |
1 | 已经调用了open()方法,但还未调用send()方法,即还未发送请求 |
2 | 已经调用了send()方法,也已经收到了响应头,但还未收到响应主体 |
3 | 正在接收响应主体,但还未完成 |
4 | HTTP响应已经全部接收完毕,或由于错误而停止 |
responseText属性
此属性值为字符串String当readyState<3,此属性为空字符串;
当readyState=3,此属性值为目前已经接收到的响应主体部分;
当readyState=4,此属性值为响应的全部主体
responseXML属性
请求响应为有效的XML或HTML文档时,此属性值为Document对象;当响应主体还没有就绪,或不是有效的XML或HTML文档,此属性值为null。status属性与statusText属性
status属性指服务器返回的HTTP状态码,statusText属性则指HTTP状态码对应的文本说明。事件处理程序
onabort | 当请求中止时触发 |
onload | 当请求成功时触发 |
onloadend | 在请求成功或者失败时触发;load、abort、error、timeout事件发生之后 |
onloadstart | 当请求开始时触发 |
onreadystatechange | 当readyStateChange属性改变时触发 |
ontimeout | 当timeout属性指定的时间已经过去但响应依旧没有完成时触发 |
onerror | 当请求因错误失败时触发。注意404等状态码不是error,因为此时响应仍然是成功完成的。 |
onprogress | 当响应主体正在下载重复触发(约每隔50ms一次) |
以下是W3C官方标准的解释:http://www.w3.org/TR/XMLHttpRequest/#events
The following are the event handlers (and
their corresponding event handler event types)
that must be supported on objects implementing an interface that inherits from
XMLHttpRequestEventTargetas
attributes:
event handler | event handler event type |
---|---|
onloadstart | loadstart |
onprogress | progress |
onabort | abort |
onerror | error |
onload | load |
ontimeout | timeout |
onloadend | loadend |
handler (and its corresponding event handler event type) that must
be supported as attribute solely by the
XMLHttpRequestobject:
event handler | event handler event type |
---|---|
onreadystatechange | readystatechange |
XMLHttpRequestand/or
XMLHttpRequestUploadobjects:
Event name | Interface | Dispatched when… |
---|---|---|
readystatechange | Event | The readyStateattribute changes value, except when it changes to UNSENT. |
loadstart | ProgressEvent | The request starts. |
progress | ProgressEvent | Transmitting data. |
abort | ProgressEvent | The request has been aborted. For instance, by invoking the abort()method. |
error | ProgressEvent | The request has failed. |
load | ProgressEvent | The request has successfully completed. |
timeout | ProgressEvent | The author specified timeout has passed before the request completed. |
loadend | ProgressEvent | The request has completed (either in success or failure). |
相关文章推荐
- Ajax对象XMLHttpRequest的常用属性,方法和事件
- XMLHttpRequest对象的属性和事件
- Ajax 中 XMLHttpRequest对象的方法与属性
- php与Ajax(二)—XMLHttpRequest对象的方法与属性
- AJAX中XMLHttpRequest对象readyState属性的状态值含义
- Ajax XMLHttpRequest对象的三个属性以及open和send方法
- 全面剖析XMLHttpRequest对象——XMLHttpRequest对象的属性和事件
- Ajax XMLHttpRequest对象的三个属性以及open和send方法AJAX
- Ajax核心XMLHttpRequest对象、(发送请求、接收)方法和属性介绍、AJAX开发框架、数据格式提要(XML、JSON、HTML)
- Ajax核心XMLHttpRequest对象、(发送请求、接收)方法和属性介绍、AJAX开发框架、数据格式提要(XML、JSON、HTML)
- ajax-xmlHttprequest对象的对象创建和属性使用
- ajax学习(XMLHttpRequest对象readyState属性)
- 01_XMLHttpRequest对象的属性和事件
- Ajax XMLHttpRequest对象的三个属性以及open和send方法
- ajax XMLHttpRequest 对象 的属性与方法
- ajax====xmlHttpRequest对象的常用属性和方法
- XMLHttpRequest对象的属性和事件
- Ajax - XMLHttpRequest对象的属性responseText
- Ajax XMLHttpRequest对象的三个属性以及open和send方法
- AJAX入门--- XMLHttpRequest对象的属性和方法