博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ajax的封装
阅读量:5098 次
发布时间:2019-06-13

本文共 1838 字,大约阅读时间需要 6 分钟。

/** parma  object   传入的数据* type  str[get  post]    传入的方式* dataType   str[xml   document  text json]     数据类型* success   fn[callback]  成功输出* erro     fn[callback]    失败输出* data   parma.data   数据* */function ajax(parma){    //对象进行判断,如果没有,则返回,报错   ajax("dd")  判断其    if(typeof (parma)!=="object"){        console.error("请输入正确的数据");        return false;    }    //参数的初始化    var dataType=parma.dataType||"text";    var asynl=parma.asynl==undefined?true:parma.asynl;    var url=parma.url;    if(url==undefined){        console.error("请输入正确的地址");        return false;    }    var data=parma.data||"";    if(typeof (data)=="object"){        var str="";        for(var i in data){            str+=i+"="+data[i]+"&";        }        data=str.slice(0,-1);    }    var xmlobj=window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");    var type=parma.type||"get";    if(type=="get"){        xmlobj.open(type,url+"?"+data,asynl);        xmlobj.responseType=dataType;        xmlobj.send();    }else if(type=="post"){        xmlobj.open(type,url,asynl);        xmlobj.responseType=dataType;        xmlobj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");        xmlobj.send(data);    }    xmlobj.onreadystatechange=function () {        if(xmlobj.readyState==4){            if(xmlobj.status==200){                if(dataType=="xml"){                    var result=xmlobj.responseXML;                }else{                    var result=xmlobj.response;                }                parma.success(result);            }else if(xmlobj.status==404){                var info="页面找不到";                parma.error(info);            } else if(xmlobj.status==500){                var info="服务器代码有误";                parma.error(info);            }        }    }}

验证

 

转载于:https://www.cnblogs.com/zyx1102/p/6405273.html

你可能感兴趣的文章
Oracle中的rownum不能使用大于>的问题
查看>>
[Data Structure & Algorithm] 有向无环图的拓扑排序及关键路径
查看>>
cassandra vs mongo (1)存储引擎
查看>>
Visual Studio基于CMake配置opencv1.0.0、opencv2.2
查看>>
Vue音乐项目笔记(三)
查看>>
遍历Map对象
查看>>
计算剪贴板里仿制的代码行数
查看>>
MySQL索引背后的数据结构及算法原理
查看>>
#Leetcode# 209. Minimum Size Subarray Sum
查看>>
SDN第四次作业
查看>>
DM8168 DVRRDK软件框架研究
查看>>
django迁移数据库错误
查看>>
yii 跳转页面
查看>>
洛谷 1449——后缀表达式(线性数据结构)
查看>>
[最小割][Kruskal] Luogu P5039 最小生成树
查看>>
Data truncation: Out of range value for column 'Quality' at row 1
查看>>
Dirichlet分布深入理解
查看>>
(转)Android之发送短信的两种方式
查看>>
python第九天课程:遇到了金角大王
查看>>
字符串处理
查看>>