当前位置: 首页 > 图文教程 > 网络编程 > AJAX技术 > 一个Ajax类

AJAX技术
成功实现ajax,xmlhttp跨域访问
实现在AJAX下的前进、后退功能
ASP.NET AJAX 控件中HTML Intellisense功能的丢失
网页中Flash激活限制的处理方法
初学Ajax须注意的几个问题
AJAX初学:IE缓存页面的问题
AJAX中DOM的操作方法
AJAX中文乱码的两类问题
ajax应该如何应用?
网页注册表单的网页设计技巧
Ajax:研究密码强度规则(仿google)
处理大量JavaScript对象的好选择:JSON
解决ajax跨域问题的实例
认识AJAX了解AJAX优点缺点和运用
一些比较常见的Javascript框架
ASP.NET AJAX:UpdatePanel控件
AJAX教程(1):AJAX简介
AJAX教程(2):AJAX Http请求
AJAX教程(3):AJAX实例
AJAX教程(4):AJAX 浏览器支持

AJAX技术 中的 一个Ajax类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 47 ::
收藏到网摘: n/a

程序代码:
<script type="text/javascript">
function Ajax(sUrl,sRecvTyp,sQueryString,oResultFunc) {
this.Url = sUrl;
this.QueryString = sQueryString;
this.XmlHttp = this.createXMLHttpRequest();
if (this.XmlHttp == null) {
alert("erro");
return;
}
var objxml = this.XmlHttp;
objxml.onreadystatechange = function (){Ajax.handleStateChange(objxml,sRecvTyp,oResultFunc)};
}
Ajax.prototype.createXMLHttpRequest = function() {
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {}
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}
try { return new XMLHttpRequest(); } catch(e) {}
return null;
}
Ajax.prototype.createQueryString = function () {
var queryString = this.QueryString;
return queryString;
}
Ajax.prototype.get = function () {
sUrl = this.Url;
var queryString = sUrl+"?timeStamp=" + new Date().getTime() + "&" + this.createQueryString();
this.XmlHttp.open("GET",queryString,true);
this.XmlHttp.send(null);
}
Ajax.prototype.post = function() {
sUrl = this.Url;
var sUrl = sUrl + "?timeStamp=" + new Date().getTime();
var queryString = this.createQueryString();
this.XmlHttp.open("POST",sUrl,true);
this.XmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
this.XmlHttp.send(queryString);
}
Ajax.handleStateChange = function (XmlHttp,sRecvTyp,oResultFunc) {
if (XmlHttp.readyState == 4) {
if (XmlHttp.status == 200) {
oResultFunc(sRecvTyp?XmlHttp.responseXML:XmlHttp.responseText);
} else {
alert("您所请求的页面有异常。");
}
}
}
</script>

使用方法:
<script type="text/javascript">
var classAjax = new Ajax(sUrl,sRecvTyp,sQueryString,oResultFunc);
classAjax.post();//post方式发送数据
classAjax.get();//get方式发送数据
//sUrl发送地址
//sRecvTyp 接受数据类型:0为xml 1为text
//oResultFunc 返回结果处理函数
</script>
应用实例:
<script type="text/javascript">
var ajax1 = new Ajax("1.asp",0,"id="+id,bacal);
ajax1.post();
function bacal(rexm){
//返回数据处理函数;
}
</script> "