六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 48|回复: 0

优雅的ajax封转

[复制链接]

升级  17.33%

18

主题

18

主题

18

主题

秀才

Rank: 2

积分
76
 楼主| 发表于 2013-1-29 10:51:03 | 显示全部楼层 |阅读模式
封装:
var MonitorAjax = function() {this.XHR = function() {var xmlHttpRequest;if(window.XMLHttpRequest) {xmlHttpRequest = new XMLHttpRequest();} else if(window.ActiveXObject) {try {xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");} catch(e1) {try {xmlHttpRequest = new ActiveXObject("MSXML2.XMLHTTP");} catch(e2) {try {xmlHttpRequest = new ActiveXObject("MSXML3.XMLHTTP");} catch(e3) {alert('创建异步通信对象失败,这是因为浏览器不支持引起的');}}}} else {alert("貌似您的浏览器不支持异步通信,部分功能无法正常运行,请切换浏览器,如:IE浏览器");}return xmlHttpRequest;}();this.request = function(url,transferType,data,callbackFn) {this.XHR.open(transferType,url,true);this.XHR.onreadystatechange = function() {if(this.readyState == 4) {if(this.status == 200) {callbackFn(this.responseText);}}};if(transferType == "POST" || transferType == "post") {this.XHR.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");}this.XHR.send(data);};}


调用:
var monitorAjax = new MonitorAjax();
monitorAjax.request("login.do","post","name=wangfeng",function(result) {
alert(result);
});
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表