自己实现ajax封装示例分享


Posted in Javascript onApril 01, 2014
 //javascript Object: ajax Object
//Created By RexLee
function Ajax(url,data){
    this.url=url;
    this.data=data;
    this.browser=(function(){  
        if(navigator.userAgent.indexOf("MSIE")>0) {  
            return "MSIE";//IE浏览器
        }else{
            return "other";//其他
    }})();
};
Ajax.prototype={
    get:function(){
        var result;
        var xmlhttp;
        if(this.browser=='MSIE'){
            try{
                xmlhttp=new ActiveXObject('microsoft.xmlhttp');
                }catch(e){
                    xmlhttp=new ActiveXObject('msxml2.xmlhttp');
                    }
            }else{
                xmlhttp=new XMLHttpRequest();
            };
        xmlhttp.onreadystatechange=function(){
            result = xmlhttp.responseText;//闭包,不能采用this.属性
        };
        xmlhttp.open('GET',this.url+'?'+this.data,false);//true无法抓取数据,why?
        xmlhttp.send(null);
        return result;
    },
    post:function(){
        var result;
        var xmlhttp;
        if(this.browser=='MSIE'){
            xmlhttp=new ActiveXObject('microsoft.xmlhttp');
            }else{
                xmlhttp=new XMLHttpRequest();
            };
        xmlhttp.onreadystatechange=function(){
            result = xmlhttp.responseText;//闭包,不能采用this.属性
        };
        xmlhttp.open('POST',this.url,false);//需设为false,否则无法抓取responseText
        xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");//POST中,这句必须
        xmlhttp.send(this.data);
        return result;
    }
};//var a=new ajax('opp2.js','');
//alert('by GET\\n'+a.get())
//alert('by POST\\n'+a.post());
///////////////////////////////
 
window.onload=function(){
document.getElementById("btn").onclick=function(){
    var p=document.getElementById("t").value;
    var a=new Ajax("phpOOP/getPage.php","page="+p);
    document.getElementById("box").innerHTML=a.get();
    };
}
Javascript 相关文章推荐
在IE浏览器中resize事件执行多次的解决方法
Jul 12 Javascript
使用 stylelint检查CSS_StyleLint
Apr 28 Javascript
vue分页组件table-pagebar使用实例解析
Nov 15 Javascript
微信小程序中实现一对多发消息详解及实例代码
Feb 14 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
Aug 24 Javascript
详解用函数式编程对JavaScript进行断舍离
Sep 18 Javascript
JS动态添加元素及绑定事件造成程序重复执行解决
Dec 07 Javascript
在nginx上部署vue项目(history模式)的方法
Dec 28 Javascript
Vue源码之关于vm.$delete()/Vue.use()内部原理详解
May 01 Javascript
js+h5 canvas实现图片验证码
Oct 11 Javascript
基于ant design日期控件使用_仅月份的操作
Oct 27 Javascript
uni-app 自定义底部导航栏的实现
Dec 11 Javascript
jquery分页对象使用示例
Apr 01 #Javascript
JavaScript对象的property属性详解
Apr 01 #Javascript
easyui datagrid 键盘上下控制选中行示例
Mar 31 #Javascript
jQuery 取值、赋值的基本方法整理
Mar 31 #Javascript
js改变鼠标的形状和样式的方法
Mar 31 #Javascript
JS 获取浏览器和屏幕宽高等信息代码
Mar 31 #Javascript
js简单的表格添加行和删除行操作示例
Mar 31 #Javascript
You might like
php计算两个文件相对路径的方法
2015/03/14 PHP
PHP中的随机性 你觉得自己幸运吗?
2016/01/22 PHP
PHP 二维关联数组根据其中一个字段排序(推荐)
2017/04/04 PHP
PHP后台实现微信小程序登录
2018/08/03 PHP
JScript中的"this"关键字使用方式补充材料
2007/03/08 Javascript
解决jquery的datepicker的本地化以及Today问题
2012/05/23 Javascript
Javascript图像处理思路及实现代码
2012/12/25 Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
2014/02/20 Javascript
jQuery遍历Table应用示例
2014/04/09 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
使用JS+plupload直接批量上传图片到又拍云
2014/12/01 Javascript
java中String类型变量的赋值问题介绍
2016/03/23 Javascript
jquery中validate与form插件提交的方式小结
2016/03/26 Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
2016/12/14 Javascript
详解从angular-cli:1.0.0-beta.28.3升级到@angular/cli:1.0.0
2017/05/22 Javascript
微信小程序之GET请求的实例详解
2017/09/29 Javascript
代码详解JS操作剪贴板
2018/02/11 Javascript
当vue路由变化时,改变导航栏的样式方法
2018/08/22 Javascript
对layui数据表格动态cols(字段)动态变化详解
2019/10/25 Javascript
[07:20]2014DOTA2西雅图国际邀请赛 选手讲解积分赛第二天
2014/07/11 DOTA
Python3 模块、包调用&路径详解
2017/10/25 Python
python中pika模块问题的深入探究
2018/10/13 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
python pandas 时间日期的处理实现
2019/07/30 Python
Python如何调用外部系统命令
2019/08/07 Python
PyTorch中的padding(边缘填充)操作方式
2020/01/03 Python
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
美国打印机墨水和碳粉购物网站:QuikShip Toner
2018/08/29 全球购物
世界上最受欢迎的钓鱼诱饵:Rapala
2019/05/02 全球购物
应用心理学个人的求职信
2013/12/08 职场文书
酒店副总经理岗位职责范本
2014/02/04 职场文书
宾馆仓管员岗位职责
2014/07/27 职场文书
2014高三学生考试作弊检讨书
2014/12/14 职场文书
长城导游词
2015/01/30 职场文书
《月球之谜》教学反思
2016/02/20 职场文书
java中重写父类方法加不加@Override详解
2021/06/21 Java/Android