最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

原生js实现ajax请求方法

来源:动视网 责编:小采 时间:2020-11-27 19:52:16
文档

原生js实现ajax请求方法

原生js实现ajax请求方法:这次给大家带来原生js实现ajax请求方法,原生js实现ajax请求方法的注意事项有哪些,下面就是实战案例,一起来看一下。上一篇文章写到原生js取代jquery的一些常用函数:原生js仿jquery一些常用方法,那么,ajax如何实现呢?如下是一个比较完整的ajax()f
推荐度:
导读原生js实现ajax请求方法:这次给大家带来原生js实现ajax请求方法,原生js实现ajax请求方法的注意事项有哪些,下面就是实战案例,一起来看一下。上一篇文章写到原生js取代jquery的一些常用函数:原生js仿jquery一些常用方法,那么,ajax如何实现呢?如下是一个比较完整的ajax()f


这次给大家带来原生js实现ajax请求方法,原生js实现ajax请求方法的注意事项有哪些,下面就是实战案例,一起来看一下。

上一篇文章写到原生js取代jquery的一些常用函数:原生js仿jquery一些常用方法,那么,ajax如何实现呢?如下是一个比较完整的ajax()

function ajax(){ 
 var ajaxData = { 
 type:arguments[0].type || "GET", 
 url:arguments[0].url || "", 
 async:arguments[0].async || "true", 
 data:arguments[0].data || null, 
 dataType:arguments[0].dataType || "text", 
 contentType:arguments[0].contentType || "application/x-www-form-urlencoded", 
 beforeSend:arguments[0].beforeSend || function(){}, 
 success:arguments[0].success || function(){}, 
 error:arguments[0].error || function(){} 
 } 
 ajaxData.beforeSend() 
 var xhr = createxmlHttpRequest(); 
 xhr.responseType=ajaxData.dataType; 
 xhr.open(ajaxData.type,ajaxData.url,ajaxData.async); 
 xhr.setRequestHeader("Content-Type",ajaxData.contentType); 
 xhr.send(convertData(ajaxData.data)); 
 xhr.onreadystatechange = function() { 
 if (xhr.readyState == 4) { 
 if(xhr.status == 200){ 
 ajaxData.success(xhr.response) 
 }else{ 
 ajaxData.error() 
 } 
 } 
 } 
} 
 
function createxmlHttpRequest() { 
 if (window.ActiveXObject) { 
 return new ActiveXObject("Microsoft.XMLHTTP"); 
 } else if (window.XMLHttpRequest) { 
 return new XMLHttpRequest(); 
 } 
} 
 
function convertData(data){ 
 if( typeof data === 'object' ){ 
 var convertResult = "" ; 
 for(var c in data){ 
 convertResult+= c + "=" + data[c] + "&"; 
 } 
 convertResult=convertResult.substring(0,convertResult.length-1) 
 return convertResult; 
 }else{ 
 return data; 
 } 
}

使用格式跟jquery的ajax差不多:

ajax({ 
 type:"POST", 
 url:"ajax.php", 
 dataType:"json", 
 data:{"val1":"abc","val2":123,"val3":"456"}, 
 beforeSend:function(){ 
 //some js code 
 }, 
 success:function(msg){ 
 console.log(msg) 
 }, 
 error:function(){ 
 console.log("error") 
 } 
})

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

JQuery中使用Ajax操作案列详解

jQuery Ajax解析大全

文档

原生js实现ajax请求方法

原生js实现ajax请求方法:这次给大家带来原生js实现ajax请求方法,原生js实现ajax请求方法的注意事项有哪些,下面就是实战案例,一起来看一下。上一篇文章写到原生js取代jquery的一些常用函数:原生js仿jquery一些常用方法,那么,ajax如何实现呢?如下是一个比较完整的ajax()f
推荐度:
标签: 方法 请求 ajax
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top