AJax 源码思路

/*
* Ajax的源码实践
*
* 创建一个Ajax
* 创建连接
* 请求
* 返回
* -----------美丽的分割线-------------------------
* 1>>>>>>>>>
* XMLHttpRequest 火狐下
* ActiveXObject(‘Microsoft.XMLHTTP‘) IE下
*
* 2>>>>>>>>>
* onreadystatechange 当客户端和服务器发生通信时调用
*
* readyState 和服务器通信完成到第几部了【只代表是否结束不代表是否成功】
* 0 初始化 还没有调用open方法
* 1 已经调用了send()方法
* 2 载入 send()方法完成
* 3 正在解析内容
* 4 完成解析客户端调用
*
* status 请求结果【是否成功】
* 200 代表成功
*
* responseText 服务器解析完成返回的内容
*/

 

 1 function ajax(url , fnSucc , fnFaild )
 2 {
 3     //创建一个ajax
 4     var oAjax = null;
 5     if(window.XMLHttpRequest)
 6     {
 7         oAjax = new XMLHttpRequest;
 8     }
 9     else
10     {
11         oAjax = new ActiveXObject(‘Microsoft.XMLHTTP‘);
12     }
13 
14     //创建连接
15     oAjax.open(‘GET‘, url , true);
16 
17     //发送请求
18     oAjax.send();
19 
20     //返回数据
21     oAjax.onreadystatechange=function()
22     {
23         if(oAjax.readyState == 4)
24         {
25             if(oAjax.status == 200)
26             {
27                 fnSucc(oAjax.responseText);
28             }
29             else
30             {
31                 if(fnFaild)//如果有第三个参数 才执行
32                 {
33                     fnSucc();
34                 }
35 
36             }
37         }
38     }
39 }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。