AJax技术

javascript ajax 简易的封装

字号+ 作者:H5之家 来源:H5之家 2017-07-02 11:04 我要评论( )

javascript ajax 简易的封装,1 //简易的ajax2 $B.ajax = function(obj){3 var xhr = $B.getXHR();//获取xhr对象4 //默认true开启异步(异步和同步的主要区别是异

正文

$B.ajax = function(obj){ (obj.async === true) { 6 xhr.onreadystatechange = function() { 7 if(xhr.readyState ==4) { 8 callback(xhr.responseText); 9 } 10 } 11 } arr=[] ; 14 for(var i in obj.data) {arr.push(encodeURIComponent(i)+'='+encodeURIComponent(obj.data[i]));} (obj.method === 'get') {obj.url = obj.url.indexOf('?') ==-1 ? obj.url+'?rand='+Math.random()+'&'+obj.data : obj.url+'rand='+Math.random()+'&'+obj.data; 18 xhr.open(obj.method,obj.url,obj.async); 19 xhr.send(null); 20 } (obj.method === 'post') {obj.url =obj.url+'?rand='+Math.random(); 24 xhr.open(obj.method,obj.url,obj.async); xhr.send(obj.data); 27 } (obj.async === false) { 31 callback(xhr.responseText); 32 } 33 function callback (returnTxt) { 34 if(xhr.status == 200){ 35 obj.success(returnTxt); 36 } 37 } 38 }; $B.isFn = function(fn){ 42 if(fn && typeof fn =='function') { } ; 46 }; (typeof XMLHttpRequest !='undefined') { XMLHttpRequest(); 50 }else if(typeof ActiveXObject !='undefined') { 51 var version = [ 52 'MSXML2.XMLHttp6.0', 53 'MSXML2.XMLHttp3.0', 54 'MSXML2.XMLHttp' 55 ] 56 for(var i in version) { 57 try{ ActiveXObject(version[i]); 59 break; 60 }catch(e){ } 63 } 64 }else{ Error("您的系统或浏览器不支持XHR对象!"); 66 } 67 };

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 详解angular ui-grid之过滤器设置

    详解angular ui-grid之过滤器设置

    2017-06-16 17:00

  • 网页基础 / Javascript/Ajax

    网页基础 / Javascript/Ajax

    2017-06-16 08:03

  • Ajax蜗牛学院原创博客,移动互联网人才孵化基地

    Ajax蜗牛学院原创博客,移动互联网人才孵化基地

    2017-06-16 08:01

  • Javascript和Ajax中文乱码吐血版解决方案

    Javascript和Ajax中文乱码吐血版解决方案

    2017-06-15 18:00

网友点评