简单的ajax连接库分享(不用jquery的ajax)


Posted in Javascript onJanuary 19, 2014
var ajax = {
 init : function(){
  var xmlHttp = new XMLHttpRequest();
  if (!window.XMLHttpRequest)
     xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    return xmlHttp;
 },
 call : function(opt){
  var xmlHttp = this.init();  xmlHttp.onreadystatechange = function(){
   if(xmlHttp.readyState===4)
   {
     xmlHttp.status===200 ?
     opt.success(xmlHttp.responseText,xmlHttp.responseXML) : opt.error(xmlHttp.responseText,xmlHttp.status);
   }
  }
  opt.data = this.parseData(opt.data);
  if(opt.method.toLowerCase() === 'get'){
   opt.url = opt.url + "?" + opt.data;
   opt.data = null;
  }
  xmlHttp.open(opt.method,opt.url,opt.async);
  if(opt.method.toLowerCase() === 'post')
   xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  xmlHttp.send(opt.data);
 },
 parseData : function(data){
  if(typeof data == 'object'){
   var str = '';
   for(var i in data){
    str += "&"+i+"="+encodeURIComponent(data[i]);
   }
   return str.length==0 ? str : str.substring(1);
  }else{
   return data;
  }
 }
}
Javascript 相关文章推荐
javascript call方法使用说明
Jan 11 Javascript
jQuery下的几个你可能没用过的功能
Aug 29 Javascript
Web开发者必备的12款超赞jQuery插件
Dec 03 Javascript
用Javascript来生成ftp脚本的小例子
Jul 03 Javascript
javascript中sort() 方法使用详解
Aug 30 Javascript
jQuery实现form表单基于ajax无刷新提交方法详解
Dec 08 Javascript
基于JavaScript获取鼠标位置的各种方法
Dec 16 Javascript
Easyui form combobox省市区三级联动
Jan 13 Javascript
详解JavaScript实现设计模式中的适配器模式的方法
May 18 Javascript
JS实现的缓冲运动效果示例
Apr 30 Javascript
vue2单元测试环境搭建
May 24 Javascript
JS实现计算小于非负数n的素数的数量算法示例
Feb 26 Javascript
js取float型小数点后两位数的方法
Jan 18 #Javascript
js数组循环遍历数组内所有元素的方法
Jan 18 #Javascript
js使用eval解析json实例与注意事项分享
Jan 18 #Javascript
收集json解析的四种方法分享
Jan 17 #Javascript
javascript在子页面中函数无法调试问题解决方法
Jan 17 #Javascript
ie7+背景透明文字不透明超级简单的实现方法
Jan 17 #Javascript
用js控制组织结构图可以任意拖拽到指定位置
Jan 17 #Javascript
You might like
PHP常用特殊运算符号和函数总结(php新手入门必看)
2013/02/02 PHP
关于PHP实现异步操作的研究
2013/02/03 PHP
php实现把url转换迅雷thunder资源下载地址的方法
2014/11/07 PHP
PHP和MySql中32位和64位的整形范围是多少
2016/02/18 PHP
在Yii2中使用Pjax导致Yii2内联脚本载入失败的原因分析
2016/03/06 PHP
php文件上传类完整实例
2016/05/14 PHP
php处理多图上传压缩代码功能
2018/06/13 PHP
JS中confirm,alert,prompt函数区别分析
2011/01/17 Javascript
图片Slider 带左右按钮的js示例
2013/08/30 Javascript
jquery实现翻动fadeIn显示的方法
2015/03/05 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
JS处理json日期格式化问题
2015/10/01 Javascript
js+canvas绘制五角星的方法
2016/01/28 Javascript
AngularJs中route的使用方法和配置
2016/02/04 Javascript
微信小程序中的onLoad详解及简单实例
2017/04/05 Javascript
vue 移动端适配方案详解
2018/11/15 Javascript
Angular 2使用路由自定义弹出组件toast操作示例
2019/05/10 Javascript
vue中使用mxgraph的方法实例代码详解
2019/05/17 Javascript
jQuery利用cookie 实现本地收藏功能(不重复无需多次命名)
2019/11/07 jQuery
Python的一些用法分享
2012/10/07 Python
Python实现简单的多任务mysql转xml的方法
2017/02/08 Python
使用Python抓取豆瓣影评数据的方法
2018/10/17 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
2020/03/11 Python
Python+OpenCV图像处理——实现轮廓发现
2020/10/23 Python
美国眼镜网:GlassesUSA
2017/09/07 全球购物
Agoda.com官方网站:便宜预订全球酒店,高达80%的折扣
2018/04/04 全球购物
Herschel Supply Co.美国:背包、手提袋及配件
2020/11/24 全球购物
创业培训计划书
2014/05/03 职场文书
关于读书的演讲稿600字
2014/08/27 职场文书
2014年移动公司工作总结
2014/12/08 职场文书
2015年医德考评自我评价
2015/03/03 职场文书
2015秋季开学典礼新闻稿
2015/07/17 职场文书
2015选调生工作总结
2015/07/24 职场文书
分享一些Java的常用工具
2021/06/11 Java/Android
elementui的el-popover修改样式不生效的解决
2021/06/30 Javascript