发个包上来
/Files/eicesoft/AJAX.zip完整的打包
1 /**
2 AJAX类库 0.9
3 @appellation AJAX Lib 0.9
4 @author 张怡冰
5 @date 2007-08-01
6 @copyright ShanghaiLongzhong
7 */
8 function AJAXLib()
9 {
10 /**
11 成员变量
12 */
13 this.XMLHttpReq = null; //XML对象
14 this.method = "post"; //执行的方法(post/get)
15 this.URLString = ""; //异步调用的页面地址
16 this.response = ""; //异步返回的响应字符串
17 this.responseXML = ""; //异步返回的响应XML
18 this.failed = false; //创建对象错误标志
19
20 /**
21 事件区
22 */
23 this.onLoading = function() { }; //正在发送请求
24 this.onLoaded = function() { }; //已经接收到全部响应内容
25 this.onInteractive = function() { }; //正在解析响应内容
26 this.onCompletion = function() { }; //响应内容解析完成
27 this.onError = function() { }; //异步错误处理事件
28 this.onFail = function() { }; //创建对象失败处理世界
29
30 /**
31 重置所有事件函数
32 */
33 this.resetFunctions = function() {
34 this.onLoading = function() { };
35 this.onLoaded = function() { };
36 this.onInteractive = function() { };
37 this.onCompletion = function() { };
38 this.onError = function() { };
39 this.onFail = function() { };
40 };
41
42 /**
43 初始化函数(构造时自动初始化)
44 */
45 this.Init = function()
46 {
47 //对于Mozilla浏览器
48 if(window.XMLHttpRequest)
49 {
50 //直接使用XMLHttpRequest函数来创建XMLHttpRequest对象
51 this.XMLHttpReq = new XMLHttpRequest();
52 }
53 //对于IE浏览器
54 else if (window.ActiveXObject)
55 {
56 //使用AcitveXObject函数创建浏览器
57 try
58 {
59 this.XMLHttpReq = new ActiveXObject("Msxml4.XMLHTTP");
60 }
61 catch(e)
62 {
63 try
64 {
65 this.XMLHttpReq = new ActiveXObject("Msxml3.XMLHTTP");
66 }
67 catch(e)
68 {
69 try
70 {
71 this.XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP");
72 }
73 catch(e)
74 {
75 try
76 {
77 this.XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
78 }
79 catch(oc)
80 {
81 this.failed=true; //创建AJAX对象发生异常
82 }
83 }
84 }
85 }
86 }
87 };
88
89 /**
90 发送请求函数
91 @param data 发送的数据
92 @example send("id=1");
93 */
94 this.Send=function(data)
95 {
96 var self=this;
97 //通过open方法取得与服务器的连接
98 if(this.method=="post")
99 {
100 this.XMLHttpReq.open(self.method,self.URLString,true);
101 }
102 else
103 {
104 this.XMLHttpReq.open(self.method,self.URLString+"?"+encodeURI(data),true);
105 }
106 //添加消息响应头
107 this.XMLHttpReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
108
109 //异步回调函数
110 this.XMLHttpReq.onreadystatechange = function()
111 {
112 //对象未创建
113 if (self.failed) {
114 self.onFail();
115 return;
116 }
117
118 //消息响应标志
119 switch (self.XMLHttpReq.readyState) {
120 case 1:
121 {
122 self.onLoading();
123 break;
124 }
125 case 2:
126 {
127 self.onLoaded();
128 break;
129 }
130 case 3:
131 {
132 self.onInteractive();
133 break;
134 }
135 case 4:
136 {
137 if(self.XMLHttpReq.status==200) {
138 self.response = self.XMLHttpReq.responseText;
139 self.responseXML = self.XMLHttpReq.responseXML;
140 self.onCompletion();
141 }
142 else
143 {
144 self.onError(); //执行错误函数
145 }
146 break;
147 }
148 }
149 };
150 if(this.method=="post")
151 {
152 this.XMLHttpReq.send(encodeURI(data)); //发送请求
153 }
154 else
155 {
156 this.XMLHttpReq.send(); //发送请求
157 }
158 };
159
160 this.Abort=function()
161 {
162 this.XMLHttpReq.abort();
163 }
164
165 this.Close=function()
166 {
167 this.XMLHttpReq=null;
168 }
169 //初始化AJAX库
170 this.Init();
171 }
测试页代码(test.htm)
1 <html>
2 <head>
3 <script language="javascript" src="AJAXLib.js"></script>
4 <script language="javascript">
5 var st=new AJAXLib();
6 st.URLString="a.aspx";
7 //st.method="post"
8 st.onCompletion=function()
9 {
10 alert(st.response);
11 }
12 st.onLoading=function()
13 {
14 alert("onLoading");
15 }
16 st.onLoaded=function()
17 {
18 alert("onLoaded");
19 }
20 st.onInteractive=function()
21 {
22 alert("onInteractive");
23 }
24 st.Send("id=1&name=张怡冰");
25 </script>
26 </head>
27 <body>
28
29 </body>
30 </html>
服务器端代码(a.asp)
1 <%
2 Dim id1,name1
3 id1=Request.QueryString("id")
4 name1=Request.QueryString("name")
5 Response.Write("你好:"+name1+"你的ID是"+id1)
6 %>
分享到:
相关推荐
**jQuery AJAX 库详解** jQuery 是一款非常流行的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画设计以及Ajax交互等任务。在Web开发中,jQuery 的 AJAX 功能是其一大亮点,它使得开发者能够实现无刷新...
Prototype.js 是一个强大的JavaScript类库,它为开发者提供了丰富的功能,使得创建具有高度互动性和Web2.0特性的富客户端页面变得更为简单。这个库的设计理念是扩展JavaScript的基础对象,提供一套统一且易于使用的...
MicrosoftAjax.js是微软为.NET Framework开发的一个Ajax库,它使得开发者能够在JavaScript环境中更轻松地实现Ajax功能。** 在JavaScript中,实现Ajax通常涉及以下几个关键步骤: 1. **创建XMLHttpRequest对象**:...
AjaxPro是一个针对.NET Framework的开源类库,专为C#开发者设计,用于简化Web应用程序中的Ajax(Asynchronous JavaScript and XML)交互。这个类库的主要目标是让开发者能够更轻松地在Web页面上实现异步更新,提升...
JavaScript 类库是开发者为了简化JavaScript编程,提高代码复用性和可维护性而创建的工具集合。其中,jQuery 是最广为人知且广泛应用的类库之一,它极大地简化了DOM操作、事件处理、动画效果和Ajax交互。在...
在JavaScript编程中,封装是一种重要的面向对象编程原则,它允许我们隐藏实现细节,提供更简洁、安全的...通过学习和使用这些封装好的类库,开发者可以更好地遵循最佳实践,写出更健壮、更易于维护的JavaScript代码。
Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使得网页实现异步更新,提升了用户体验。PHP则是一种广泛使用的...
**DHTML+Ajax套装类库**是一组预封装的JavaScript函数和对象,为开发者提供了一种更高效、更简洁的方式来实现DHTML和Ajax功能。这样的类库通常包括了对DOM操作、事件处理、动画效果、Ajax请求等常见任务的封装,使得...
Ajax.BeginForm 提交,需要引用此文件才会执行OnSuccess
使用Ajax实现从服务器读取数据,包括Ajax实现的详细步骤
ajax轻量级封装,简单实用,带有详细注释。 一、同一个对象可以发送多个请求,按顺序执行请求,有简单的超时机制,httpXMLRequest对象复用,无序的可以建立多个对象发送请求来实现; 二、兼容IE,FF,支持同步、异步...
JavaScript_Videojs开源HTML5视频播放器.zip是一个包含JavaScript编程语言和Video.js库的资源包。Video.js是一个广泛使用的开源HTML5视频播放器,它允许开发者创建功能丰富的、自定义的视频体验。在这个压缩包中,有...
《Apress.Pro.Ajax.and.Java.Frameworks.Jul.2006.HAPPY.NEW.YEAR》这本书专注于探讨如何在Java环境中利用Ajax技术构建高效、交互性强的Web应用。Ajax(Asynchronous JavaScript and XML)是一种用于创建动态网页的...
"Simple use of Ajax"可能是示例程序或者类库文件的名称,它暗示了这个压缩包包含的内容将展示如何简便地在ASP.NET+C#环境中使用Ajax。 **详细知识点:** 1. **Ajax基础**:首先,了解Ajax的基本概念,包括异步...
在Web开发领域,Ajax(Asynchronous JavaScript and XML)与JavaScript是两种至关重要的技术,它们共同构建了现代网页的动态交互体验。Ajax的核心理念是通过后台数据异步交换,实现页面无需刷新即可更新部分内容,...
jQuery是一个广泛应用于Web开发的JavaScript库,它极大地简化了JavaScript的DOM操作、事件处理、动画设计和Ajax交互。这个“jquery类库.zip”文件显然包含了有关jQuery的核心库及相关资源,可能是不同版本的jQuery库...
EXTJS 类库4.0 beta,本身自带有丰富的UI用户界面,用来开发RIA富客户端的AJAX应用,无后台AJAX无直接联系,可方便用在ASP/PHP/.Net/Java/JSP等多种WEB开发语言中。
很好用的ajax开源框架prototype.js,支持强大的异步交互功能,使你的页面更灵活,具有更好的用户体验
XAJAX 是一个基于 PHP 的开源库,它使得在 Web 应用程序中实现 AJAX(Asynchronous JavaScript and XML,异步JavaScript与XML)技术变得更加简单。AJAX 允许网页在不刷新整个页面的情况下与服务器交换数据并更新部分...
Prototype是一个强大的JavaScript类库,它的出现是为了弥补JavaScript在面向对象编程方面的不足,提供了一套丰富的函数和工具,使开发者能够更高效地编写可维护的JavaScript代码。Prototype的核心理念是通过模拟传统...