AJAX入门之XMLHttpRequest对象

       众所周知,XMLHttpRequest对象是AJAX技术的核心,AJAX的很多功能都是通过该对象完成的。那么我们面临的问题首先是应该怎么去创建该对象。由于XMLHttpRequest不是一个W3C标准,所以可以采用多种方法使用JavaScript来创建XMLHttpRequest的实例。

 

ContractedBlock.gif ExpandedBlockStart.gif Code
 1 <script type="text/javascript">
 2      var xmlHttp;
 3      function createXMLHttpRequest()
 4      {
 5        if(window.ActiveXObject)
 6        {
 7           //以ActiveX对象来创建
 8           xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
 9        }
10        else if(window.XMLHttpRequest)
11        {
12          //以Js对象来创建
13          xmlHttp = new XMLHttpRequest();
14        }
15      } 
16 </script>

 

      有了XMLHttpRequest对象后,我们就可以完成所谓的回调了。一般来说回调的步骤为:

 1》 得到XMLHttpRequest对象的引用,无论是创建的或是获得一个原本有的都可以。

 2》 设置XMLHttpRequest对象的状态变化的处理函数。

 3》 指定请求的属性。

 4》 发送请求给服务器。

 

ContractedBlock.gif ExpandedBlockStart.gif Code
 1<script type="text/javascript">
 2     var xmlHttp;
 3     function createXMLHttpRequest()
 4ExpandedBlockStart.gifContractedBlock.gif     {
 5       if(window.ActiveXObject)
 6ExpandedSubBlockStart.gifContractedSubBlock.gif       {
 7          //以ActiveX对象来创建
 8          xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
 9       }

10       else if(window.XMLHttpRequest)
11ExpandedSubBlockStart.gifContractedSubBlock.gif       {
12         //以Js对象来创建
13         xmlHttp = new XMLHttpRequest();
14       }

15     }

16     //开始请求
17     function startRequest()
18ExpandedBlockStart.gifContractedBlock.gif     {
19       // 第一步:创建XMLHttpRequest对象 
20       createXMLHttpRequest();
21       // 第二步:指定回调函数 
22       xmlHttp.onreadystatechange=handleStateChange;
23       // 第三步:指定请求的属性
24       xmlHttp.open("GET","Test.xml",true);
25       // 第四步:发送请求
26       xmlHttp.send(null);
27     }

28     // 回调函数
29     function handleStateChange()
30ExpandedBlockStart.gifContractedBlock.gif     {
31       if(xmlHttp.readyState==4)
32ExpandedSubBlockStart.gifContractedSubBlock.gif       {
33          if(xmlHttp.status==200)
34ExpandedSubBlockStart.gifContractedSubBlock.gif          {
35             alert("The server replied with:" + xmlHttp.responseText);
36          }

37       }

38     }

39    </script>

       最后我们只需要在源文件的某个控件的事件添加回应函数即可。

如:<input type="button" value="Send Request" onclick ="startRequest();" />

转载于:https://www.cnblogs.com/gis_sky/archive/2009/11/10/XMLHttpRequest.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值