`
董宗磊
  • 浏览: 65487 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ajax里的onreadystatechange的作用

阅读更多

发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态,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 内部服务器错误

分享到:
评论

相关推荐

    WEB开发 之 AJAX - onreadystatechange 事件.docx

    `onreadystatechange`事件是AJAX中的关键部分,它使得开发者能够在XMLHttpRequest对象的状态发生变化时执行相应的处理程序。 XMLHttpRequest对象是AJAX的核心,它提供了与服务器进行通信的能力。`...

    AJAX – onreadystatechange 事件

    在 AJAX 中,`onreadystatechange` 事件扮演了关键角色,它使得开发者能够根据请求的状态来执行相应的处理。 `onreadystatechange` 事件是一个事件处理器,每当 `XMLHttpRequest` 对象的 `readyState` 属性发生变化...

    Ajax 给 XMLHttpReq.onreadystatechange传递参数

    在JavaScript和Web开发中,Ajax(Asynchronous JavaScript and XML)是一种技术,用于在不刷新整个网页的情况下更新页面的特定部分。Ajax的核心是XMLHttpRequest对象,它允许与服务器进行异步数据交换。`...

    ajax ajax原理 ajax代码 ajax编程 ajax学习

    **Ajax(Asynchronous JavaScript and XML)技术是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新,提升了用户体验。Ajax的核心是...

    认识Ajax的作用,对象及属性

    Ajax,全称Asynchronous Javascript And Xml,是一种在网络应用中实现异步通讯和数据交互的技术,其核心是XMLHttpRequest对象。Ajax并非单一技术,而是由JavaScript、XHTML、CSS、XML、DOM、XSLT以及XMLHttpRequest...

    firefox下对ajax的onreadystatechange的支持情况分析

    在Firefox浏览器中,AJAX(异步JavaScript和XML)的`onreadystatechange`事件处理与Internet Explorer(IE)存在一些差异,这些差异可能会导致在处理服务器响应时遇到问题。`onreadystatechange`是AJAX请求的核心...

    AjaxRequest(Ajax使用包)

    **AjaxRequest(Ajax使用包)** Ajax,全称Asynchronous JavaScript and XML(异步JavaScript和XML),是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。AjaxRequest是实现Ajax功能的一个工具包,它...

    Ajax Ajax本质 Ajax本质源码

    2. **JavaScript事件处理**:当请求被发送到服务器后,XMLHttpRequest对象会触发一系列的事件,如onreadystatechange。开发者可以注册这些事件的回调函数,以便在合适的时候执行相应的操作,例如检查readyState和...

    ajax demo ajax实例

    Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新。这种技术可以让网页更加互动,提供更好的用户...

    Ajax相关源码jar包下载

    5. **响应处理**:服务器返回数据,Ajax请求对象的onreadystatechange事件被触发,当readyState属性变为4(表示请求已完成)且status属性为200(表示成功)时,表示数据已准备好。 6. **更新DOM**:JavaScript接收到...

    基于ajax相册系统

    4. **监听状态变化**:通过onreadystatechange事件,当请求状态改变时触发回调函数。状态4表示请求已完成,此时可以获取服务器返回的数据。 5. **处理响应**:使用responseText或responseXML属性获取服务器返回的...

    Ajax简介Ajax.API

    * onreadystatechange:存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数 * readyState:存有 XMLHttpRequest 的状态,从 0 到 4 发生变化 * status:存有服务器的状态码 * statusText:存有...

    ajax教程

    - **接收响应**:通过监听`onreadystatechange`事件,当`readyState`属性变为4(表示请求已完成)且`status`为200(表示成功)时,读取`responseText`或`responseXML`获取响应数据。 **3. 数据格式** 虽然名字中有...

    ajax使用简单demo

    **Ajax(Asynchronous JavaScript and XML)**是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新。这意味着可以在不打断用户操作的情况下...

    AJax 学习笔记二(onreadystatechange的作用)

    当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了onreadyStateChange事件实现这一功能。这类似于回调函数的做法。onreadyStateChange事件可...

    ajax和js的web开发

    6. **监听状态变化**:使用onreadystatechange事件监听请求状态,当状态变为4(表示请求完成)且状态码为200(表示成功)时,说明请求成功。 7. **处理响应**:获取并解析服务器返回的数据,可以通过responseText或...

    ajax的所有组件.ajax的组件

    当服务器响应时,XMLHttpRequest对象会触发onreadystatechange事件,通过status和responseText属性获取响应状态和数据。 2. **JavaScript**:用于创建和操作XMLHttpRequest对象,处理用户的交互,以及解析和显示...

    ajaxDEMO 适合ajax初学者

    **Ajax(Asynchronous JavaScript and XML)技术是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新。本AjaxDEMO适合初学者学习,旨在提供...

    简单Ajax实例AjaxSample

    Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这个简单的Ajax实例“AjaxSample”旨在演示如何通过JavaScript实现异步数据交换,从而提升用户体验,减少...

Global site tag (gtag.js) - Google Analytics