原生js封装ajax
2018-06-24 01:53:35来源:未知 阅读 ()
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>AJAX</title>
</head>
<body>
<script type="text/javascript">
function Ajax(parameter){
var xhr=null;
var message=null;
var newurl=null;
var method=parameter.method=="post"?"post":"get";
var url=parameter.url;
var sync=parameter.sync==true?true:false;
var success=parameter.success;
var dataType=parameter.dataType;
//创建XML对象
if(window.XMLHttpRequest){
xhr=new XMLHttpRequest();//标准浏览器
}
else if(window.ActiveXObject){
xhr=new ActiveXObject("Microsoft.XMLHTTP");//IE
}
if(method=="post"){
message=url.substring(url.indexOf("?")+1,url.length);//获取?之后的内容(不包括?)
newurl=url.substring(0,url.indexOf("?"));//获取?之前的内容(不包括?)
xhr.open(method,newurl,sync);//准备发送请求(配置参数),还没发送
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");//post提交方式不像get提交方式是默认的,post方式你需要告诉浏览器你使用post提交方式,所以就需要这个请求头
xhr.send(message);//发送请求
}
else if(method=="get"){
xhr.open(method,url,isNsychronous);
xhr.send(message);//这里面的null 有的老版本浏览器得放一个null兼容处理吧算是
}
xhr.onreadystatechange=function()
{
if(xhr.readyState==4){
if(xhr.status==200){
var data=dataType=='xml'?xhr.responseXML:xhr.responseText;
success &&success(data);//成功返回数据的时候调用这个函数
}
else{
alert("出错了,帅气喆");//失败的时候也可以调用函数 看你需求啦
}
}
}
}
var parameter={
method:"post"
,url:"test.php?username=admin&password=1234",
sync:true,
success:function(data){
console.log(data);
},
dataType:"json"
};
Ajax(parameter);
</script>
</body>
</html>
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:面向对象的程序设计——创建对象
- Javascript Ajax异步读取RSS文档具体实现 2020-02-25
- jquery ajax检测用户名是否存在的方法 2020-02-14
- jQuery Ajax使用FormData对象上传文件的方法 2019-11-10
- 原生js实现图片懒加载+加入节流 2019-08-14
- 用原生JS写省市二级联动 2019-08-14
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash