读书人

原始的Ajax 直接施用XmlHttpRequest

发布时间: 2012-11-06 14:07:00 作者: rapoo

原始的Ajax 直接使用XmlHttpRequest
{ // only if "OK" if (req.status == 200) { 502 502'votes').innerHTML = req.responseText; }
else { alert("There was a problem retrieving the XML data:" + req.statusText); } }}

该代码相当简洁,并且使用了几个幻数,这使得难以一下子看出发生了什么。为了弄清楚这一点,下面的表格(引用自 http://developer.apple.com/internet/webcontent/xmlhttpreq.html)列举了常用的 XmlHttpRequest对象属性。

属性


描述

onreadystatechange


每次状态改变所触发事件的事件处理程序

readyState


对象状态值:

* 0 = 未初始化(uninitialized)
* 1 = 正在加载(loading)
* 2 = 加载完毕(loaded)
* 3 = 交互(interactive)
* 4 = 完成(complete)

responseText


从服务器进程返回的数据的字符串形式

responseXML


从服务器进程返回的DOM兼容的文档数据对象

status


从服务器返回的数字代码,比如404(未找到)或200(就绪)

statusText


伴随状态码的字符串信息

  现在processVoteResponse()函数开始显示出其意义了。它首先检查XmlHttpRequest的整体状态以保证它已经完成(readyStatus == 4),然后根据服务器的设定询问请求状态。如果一切正常(status == 200),就使用innerHTML属性重写DOM的“votes”节点的内容。

  既然您亲眼看到了XmlHttpRequest对象是如何工作的,就让我们利用一个旨在简化JavaScript与Java应用程序之间的异步通信的框架来对具体的细节进行抽象。?

读书人网 >XML SOAP

热点推荐