自己实现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 相关文章推荐
仿163填写邮件地址自动显示下拉(无优化)
Nov 05 Javascript
用jquery设置按钮的disabled属性的实现代码
Nov 28 Javascript
jquery.cookie.js 操作cookie实现记住密码功能的实现代码
Apr 27 Javascript
原生js实现给指定元素的后面追加内容
Apr 10 Javascript
JavaScript实现存储HTML字符串示例
Apr 21 Javascript
取得元素的左和上偏移量的方法
Sep 17 Javascript
CSS图片响应式 垂直水平居中
Aug 14 Javascript
js文本框走动跑马灯效果代码分享
Aug 25 Javascript
图文详解Heap Sort堆排序算法及JavaScript的代码实现
May 04 Javascript
大白话讲解JavaScript的Promise
Apr 06 Javascript
解决vue 更改计算属性后select选中值不更改的问题
Mar 02 Javascript
微信小程序弹窗禁止页面滚动的实现代码
Dec 30 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调用Java对象的方法
2006/10/09 PHP
php摘要生成函数(无乱码)
2012/02/04 PHP
PHP register_shutdown_function()函数的使用示例
2015/06/23 PHP
JQuery显示隐藏DIV的方法及代码实例
2015/04/16 Javascript
jQuery构造函数init参数分析续
2015/05/13 Javascript
在AngularJS中使用jQuery的zTree插件的方法
2016/04/21 Javascript
js调用webservice构造SOAP进行身份验证
2016/04/27 Javascript
js只执行1次的函数示例
2016/07/20 Javascript
JavaScript获取服务器时间的方法详解
2016/12/11 Javascript
深入浅出es6模板字符串
2017/08/26 Javascript
JavaScript生成简单等差数列
2017/11/28 Javascript
在layui下对元素进行事件绑定的实例
2019/09/06 Javascript
解决layui富文本编辑器图片上传无法回显的问题
2019/09/18 Javascript
解决vue 使用axios.all()方法发起多个请求控制台报错的问题
2020/11/09 Javascript
Python操作列表之List.insert()方法的使用
2015/05/20 Python
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
2018/01/04 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
2019/04/06 Python
pandas 数据结构之Series的使用方法
2019/06/21 Python
python pip源配置,pip配置文件存放位置的方法
2019/07/12 Python
对Tensorflow中Device实例的生成和管理详解
2020/02/04 Python
Python如何避免文件同名产生覆盖
2020/06/09 Python
Python 实现自动登录+点击+滑动验证功能
2020/06/10 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
2020/11/28 Python
CSS+jQuery实现的在线答题功能
2015/04/25 HTML / CSS
数据员岗位职责
2013/11/19 职场文书
单位人事专员介绍信
2014/01/11 职场文书
会计专业大学生职业生涯规划书
2014/02/11 职场文书
农业局学习党的群众路线教育实践活动心得体会
2014/03/07 职场文书
乡镇爱国卫生月活动总结
2014/06/25 职场文书
员工工作能力评语
2014/12/31 职场文书
担保公司2015年终工作总结
2015/10/14 职场文书
餐饮行业关注的9大营销策略
2019/08/26 职场文书
Redis缓存-序列化对象存储乱码问题的解决
2021/06/21 Redis
解决Mysql报错 Table 'mysql.user' doesn't exist
2022/05/06 MySQL
分享几个实用的CSS代码块
2022/06/10 HTML / CSS
Redis唯一ID生成器的实现
2022/07/07 Redis