码迷,mamicode.com
首页 > 其他好文 > 详细

ajax

时间:2014-07-29 15:30:29      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:ajax

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>ajax</title>
	<script>
 /**
  *    onreadystatechange  每次状态改变所触发事件的事件处理程序。
  *  responseText     从服务器进程返回数据的字符串形式。
  *  responseXML    从服务器进程返回的DOM兼容的文档数据对象。
  *  status           从服务器返回的数字代码,比如常见的404(未找到)和200(已就绪)
  *  status Text       伴随状态码的字符串信息
  *  readyState       对象状态值
 *   0 (未初始化) 对象已建立,但是尚未初始化(尚未调用open方法)
 *   1 (初始化) 对象已建立,尚未调用send方法
 *   2 (发送数据) send方法已调用,但是当前的状态及http头未知
 *   3 (数据传送中) 已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,
 *   4 (完成) 数据接收完毕,此时可以通过通过responseXml和responseText获取完整的回应数据
  */

function createXHR(){
	if(typeof XMLHttpRequest != "undefined"){
		return new XMLHttpRequest();
	}else if(typeof ActiveXObject != "undefined"){
             if(typeof arguments.callee.activeXString != "string"){
             		var versions=["MSXML2.XMLHttp.6.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp"],
             			i,
             			len;
             			for (i = 0,len=versions.length; i < len; i++) {
             				try{
             					new ActiveXObject(versions[i]);
             					arguments.callee.activeXString=versions[i];
             					break;
             				}catch(ex){
             					console.log("error:  "+ex);
             				}
             			};

             }
             return new ActiveXObject(arguments.callee.activeXString);
	}else{
		throw new Error("No XHR object available!");
	}
}
	var xhr=createXHR();
	xhr.onreadystatechange=function(){
		if(xhr.readyState==4){
			if((xhr.status>=200 && xhr.status<300) || xhr.status==304){
				console.log(xhr.responseText+"dd\n");
				console.log(xhr.getAllResponseHeaders());
				alert(xhr.responseText);
			}else{
				alert("request was unsuccessful: "+xhr.status);
			}
		}
	}
	xhr.onprogress=function(event){
var divstatus=document.getElementById("s");
if(event.lengthComputable){
	divstatus.innerHTML="Received "+event.position+"of"+event.totalSize+"bytes";
}
	};
	xhr.open("post","http://xxxx",false);
	xhr.send();


	</script>

</head>
<body>
<div id="s">ddd</div>
</body>
</html>


本文出自 “singsong” 博客,请务必保留此出处http://singsong.blog.51cto.com/2982804/1532054

ajax,布布扣,bubuko.com

ajax

标签:ajax

原文地址:http://singsong.blog.51cto.com/2982804/1532054

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!