使用js仿写jquery中$.ajax()方法
2017-11-08 20:58
591 查看
核心代码:
使用示例:
var Ajax = function(option){ var _option = { xmlhttp : null, type: "GET", async: true, data: "", contentType: "application/x-www-form-urlencoded", dataType: "text", // json url: "", success: function(status, response){}, complete: function(status, response){}, error: function(e){console.error(e);}, timeout: function(e){console.error(e);} } for( key in option){ _option[key] = option[key]; } var xmlhttp = (function(){ if (window.XMLHttpRequest){// code for all new browsers return new XMLHttpRequest(); }else if (window.ActiveXObject){// code for IE5 and IE6 return new ActiveXObject("Microsoft.XMLHTTP"); } })(); if(xmlhttp != null) { xmlhttp.open(_option.type, _option.url, _option.async); xmlhttp.responseType = _option.dataType; xmlhttp.setRequestHeader("content-type", _option.contentType); xmlhttp.ontimeout = function(e) { _option.timeout(e); }; xmlhttp.onerror = function(e) { _option.error(e); }; xmlhttp.onreadystatechange = function(){ if (xmlhttp.readyState == 4){ if (xmlhttp.status == 200) { _option.success(xmlhttp.status, xmlhttp.response); } _option.complete(xmlhttp.status, xmlhttp.response); } } xmlhttp.send(_option.data); } else { console.error("Your browser does not support XMLHTTP."); } }
使用示例:
Ajax({ type: "POST", async: true, data: '{"name":"测试人员","age":22}', contentType: "application/json;charset=utf-8", dataType: "json", url: "test", success:function(status, response){ console.log(response.code); console.log(response.message); } });
相关文章推荐
- 【js与jquery】jquery中$.ajax()方法的使用
- jquery.form.js实现将form提交转为ajax方式提交的使用方法
- ajax上传图片所用jquery.form.js插件详细使用方法
- 使用jquery.form.js的ajaxsubmit方法提交数据的Bug
- 使用jquery.form.js的ajaxsubmit方法提交时参数file标签有值报JS错误
- 习惯了使用jQuery的ajax方法,看看原生js使用xmlhttpRequest实现ajax请求
- Jquery 模板插件 jquery.tmpl.js 的使用方法(1):基本语法,绑定,each循环,ajax获取json数据
- jQuery使用Ajax方法调用WebService
- jquery 跨域ajax jsonp使用方法
- 使用jquery+json实现ajax的方法
- .net的ajax中使用javascript的send方法post参数,url传参,ajax同步异步JS包,传参即可用
- jQuery中ajax的使用方法
- javascript:jquery.history.js使用方法
- 使用jquery中的ajax方法验证表单
- .net的ajax中使用javascript的send方法post参数,url传参,ajax同步异步JS包,传参即可用
- 在JQuery中可以使用get,post和ajax方法给服务器端传递数据
- Jquery在IE7下无法使用 $.ajax解决方法(转)
- jQuery UI Autocomplete 使用 ajax 方法传输Json数据出现乱码问题的解决
- 使用jquery+json实现ajax的方法
- jQuery.ajax使用方法