/*
*
*create by royal in 2019/1/23
*
*royalAjax 自封装ajax函数
*
*paramsObj JSON类型参数
*require params:
* type : string
* url : string
* data : JSON
* success : function
*
*注:get无参请求时,data参数可以不写
*
*/
(function(){
function royalAjax(paramsObj){
//处理参数
if(paramsObj.type.toLowerCase()=='get'){
var arr=[];
for(var pro in paramsObj.data){
var str =pro+'='+paramsObj.data[pro];
arr.push(str);
}
var canshuStr = arr.join('&');
//将参数添加到url后
paramsObj.url +=paramsObj.url.indexOf('?')== -1
?'?'+canshuStr
:'&'+canshuStr;
}else if(paramsObj.type.toLowerCase()=='post'){
var formdata =new FormData();
for(var pro in paramsObj.data){
formdata.append(pro,paramsObj.data[pro]);
}
}else{
console.log("无效的请求类型!!");
} //准备xhr对象
var xhr = new XMLHttpRequest();
xhr.onreadystatechange =function(){
if(xhr.readyState==4){
if(xhr.status==200){
//请求回来后调用success
paramsObj.success(JSON.parse(xhr.responseText));
}
}
} //准备发送
xhr.open(paramsObj.type, paramsObj.url, true);
//发送请求
if(paramsObj.type.toLowerCase()=='get'){
xhr.send(null);
}else if(paramsObj.type.toLowerCase()=='post'){
xhr.send(formdata);
}else{
console.log("请求类型错误!");
}
}
window.royalAjax= royalAjax;
})();

最新文章

  1. Redis 缓存过期(maxmemory) 配置/算法 详解
  2. JavaScript算法(归并排序与快速排序)
  3. 爱上MVC~AuthorizeAttribute验证不通过如何停止当前上下文
  4. ASP.NET MVC 在控制器中获取某个视图动态的HTML代码
  5. 原生的on事件代理
  6. MongoDB与Mysql常用命令解释
  7. CSS中常用的字体单位:px、em、rem和%的区别
  8. 【CSS3】---阴影 box-shadow
  9. 自增运算a++和++b(1)
  10. 携程Java工程师——一道面向对象面试选择题(转)
  11. Dirichlet's Theorem on Arithmetic Progression
  12. jmeter压力测试的简单实例+badboy脚本录制(一个简单的网页用户登录测试的结果)
  13. Markdown格式
  14. 以Apache模块的方式编译安装php-5.4.27
  15. linux shell 和linux 命令的区别?windows shell 和 windows 命令呢?
  16. JAVA面向对象-----多态
  17. Spring中关于AOP的实践之AspectJ方式实现通知
  18. 解决Navicat远程连接MySQL出现 10060 unknow error
  19. zabbix3.2监控mongodb
  20. mysql 开发基础系列3 日期数据类型

热门文章

  1. POJ3974 Palindrome Manacher 最长回文子串模板
  2. 简单的方法爬取b站dnf视频封面步骤解释
  3. js中去掉字符中间空格和首尾空格
  4. jQuery树形控件zTree使用
  5. devtools实现springboot的热部署
  6. (转)rename命令详解
  7. Sqoop架构
  8. Android模拟器使用SD卡
  9. JSONP 回调给全局变量赋值失败解决
  10. HQL语句中的join fetch