自己实现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 相关文章推荐
前端轻量级MVC框架CanJS详解
Sep 26 Javascript
JS获取Table中td值的方法
Mar 19 Javascript
jquery实现未经美化的简洁TAB菜单效果
Aug 28 Javascript
json实现添加、遍历与删除属性的方法
Jun 17 Javascript
微信小程序 Video API实例详解
Oct 02 Javascript
Vue.js 和 MVVM 的注意事项
Nov 07 Javascript
Node.js 8 中的重要新特性
Jun 28 Javascript
jQuery实现页码跳转式动态数据分页
Dec 31 jQuery
Vue实现的父组件向子组件传值功能示例
Jan 19 Javascript
localstorage实现带过期时间的缓存功能
Jun 28 Javascript
vue 解决文本框被键盘遮住的问题
Nov 06 Javascript
详解JS数组方法
Nov 20 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实现rc4加密算法代码
2012/04/25 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
2013/08/15 PHP
php实现查看邮件是否已被阅读的方法
2013/12/03 PHP
php在线解压ZIP文件的方法
2014/12/30 PHP
php实现的错误处理封装类实例
2017/06/20 PHP
详细对比php中类继承和接口继承
2018/10/11 PHP
jQuery构造函数init参数分析续
2015/05/13 Javascript
JavaScript中的函数嵌套使用
2015/06/04 Javascript
实例讲解js验证表单项是否为空的方法
2016/01/09 Javascript
JavaScript+CSS实现的可折叠二级菜单实例
2016/02/29 Javascript
Bootstrap 表单验证formValidation 实现远程验证功能
2017/05/17 Javascript
Angular17之Angular自定义指令详解
2018/01/21 Javascript
vue项目中使用百度地图的方法
2018/06/08 Javascript
微信小程序ibeacon三点定位详解
2018/10/31 Javascript
koa大型web项目中使用路由装饰器的方法示例
2019/04/02 Javascript
Vue传参一箩筐(页面、组件)
2019/04/04 Javascript
[42:11]TNC vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
跟老齐学Python之集成开发环境(IDE)
2014/09/12 Python
Python读取mat文件,并转为csv文件的实例
2018/07/04 Python
Tensorflow使用支持向量机拟合线性回归
2018/09/07 Python
浅谈Pycharm最有必要改的几个默认设置项
2020/02/14 Python
python实现读取类别频数数据画水平条形图案例
2020/04/24 Python
python3.7+selenium模拟淘宝登录功能的实现
2020/05/26 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
CSS3自定义滚动条样式的示例代码
2017/08/21 HTML / CSS
顶级宝石首饰网络零售商:Angara
2016/10/25 全球购物
英国假睫毛购买网站:FalseEyelashes.co.uk
2018/05/23 全球购物
档案检查欢迎词
2014/01/13 职场文书
校园文化建设方案
2014/02/03 职场文书
2014年情人节活动方案
2014/02/16 职场文书
小学评语大全
2014/04/22 职场文书
关于读书的演讲稿500字
2014/08/27 职场文书
办理护照工作证明
2014/10/10 职场文书
电信营业员岗位职责
2015/04/14 职场文书
python 如何获取页面所有a标签下href的值
2021/05/06 Python
Three.js实现雪糕地球的使用示例详解
2022/07/07 Javascript