自己实现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 相关文章推荐
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
Mar 22 Javascript
使用JavaScript switch case 另类写法
Mar 14 Javascript
div层的移动及性能优化
Nov 16 Javascript
jQuery.validate 常用方法及需要注意的问题
Mar 20 Javascript
框架页面高度自动刷新的Javascript脚本
Nov 01 Javascript
JavaScript判断按钮被点击的方法
Dec 13 Javascript
Node.js实现JS文件合并小工具
Feb 02 Javascript
JavaScript学习笔记整理_关于表达式和语句
Sep 19 Javascript
Angular和百度地图的结合实例代码
Oct 19 Javascript
Vue中之nextTick函数源码分析详解
Oct 17 Javascript
vue操作下拉选择器获取选择的数据的id方法
Aug 24 Javascript
实现vuex原理的示例
Oct 21 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字符串 ==比较运算符的副作用
2009/10/21 PHP
用javascript获得地址栏参数的两种方法
2006/11/08 Javascript
利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
2007/03/24 Javascript
jqPlot jquery的页面图表绘制工具
2009/07/25 Javascript
jquery 问答知识整理
2010/02/11 Javascript
jquery.validate使用攻略 第五步 正则验证
2010/07/01 Javascript
JQuery开发的数独游戏代码
2010/10/29 Javascript
showModalDialog模态对话框的使用详解以及浏览器兼容
2014/01/11 Javascript
JS 打印功能代码可实现打印预览、打印设置等
2014/10/31 Javascript
Node.js connect ECONNREFUSED错误解决办法
2016/09/15 Javascript
Vuejs 用$emit与$on来进行兄弟组件之间的数据传输通信
2017/02/23 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
2017/05/11 Javascript
用户管理的设计_jquery的ajax实现二级联动效果
2017/07/13 jQuery
深入理解ES6的迭代器与生成器
2017/08/19 Javascript
Express系列之multer上传的使用
2017/10/27 Javascript
详解react、redux、react-redux之间的关系
2018/04/11 Javascript
vue路由事件beforeRouteLeave及组件内定时器的清除方法
2018/09/29 Javascript
vue权限管理系统的实现代码
2019/01/17 Javascript
vue 解决移动端弹出键盘导致页面fixed布局错乱的问题
2019/11/06 Javascript
python解析xml模块封装代码
2014/02/07 Python
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Python实现扫描局域网活动ip(扫描在线电脑)
2015/04/28 Python
让Python代码更快运行的5种方法
2015/06/21 Python
python解析基于xml格式的日志文件
2017/02/25 Python
Python中函数及默认参数的定义与调用操作实例分析
2017/07/25 Python
Python字典实现简单的三级菜单(实例讲解)
2017/07/31 Python
详解python多线程、锁、event事件机制的简单使用
2018/04/27 Python
Python xlwt模块使用代码实例
2020/06/10 Python
HTML5有哪些新特征
2015/12/01 HTML / CSS
俄罗斯花园种植材料批发和零售网上商店:Беккер
2019/07/22 全球购物
周年庆促销方案
2014/03/15 职场文书
2015年医德考评自我评价
2015/03/03 职场文书
幽默导游词开场白
2015/05/29 职场文书
交通处罚决定书
2015/06/24 职场文书
JS精髓原型链继承及构造函数继承问题纠正
2022/06/16 Javascript
webpack介绍使用配置教程详解webpack介绍和使用
2022/06/25 Javascript