原生ajax

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  	<script type="text/javascript" src="jquery-1.8.3.js"></script>
        <script type="text/javascript">
  		function ajax(){
  			var xmlHttpRequest = null;
  			if(window.ActiveXObject){
  				xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
  			}else if(window.XMLHttpRequest){
  				xmlHttpRequest=new XMLHttpRequest();
  			}
  			xmlHttpRequest.open("GET","test",true);
  			xmlHttpRequest.onreadystatechange=callBack;
  			xmlHttpRequest.send(null);
  			function callBack(){
  				if(xmlHttpRequest.readyState==4){
  					if(xmlHttpRequest.status ==200){
  						document.getElementById("showText").innerHTML
  							= xmlHttpRequest.responseText;
  					}
  				}
  			}
  		}
  	</script>
  </head>
  <body>
  	<div id="showText"></div>
  	<input type="button" onclick="javascript:ajax()" value="sendAjax">
  </body>
</html>

 

XmlHttp是什么?

最通用的定义为:XmlHttp是一套可以在Javascript、VbScript、Jscript等脚本语言中通过http协议传送或从接收XML及其他数据的一套API。XmlHttp最大的用处是可以更新网页的部分内容而不需要刷新整个页面。
来自MSDN的解释:XmlHttp提供客户端同http服务器通讯的协议。客户端可以通过XmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用微软XML文档对象模型Microsoft? XML Document Object Model (DOM)处理回应。

现在的绝对多数浏览器都增加了对XmlHttp的支持,IE中使用ActiveXObject方式创建XmlHttp对象,其他浏览器如:Firefox、Opera等通过window.XMLHttpRequest来创建xmlhttp对象。

XmlHttp对象参考:

属性:

onreadystatechange* 指定当readyState属性改变时的事件处理句柄。只写
readyState 返回当前请求的状态,只读.
responseBody 将回应信息正文以unsigned byte数组形式返回.只读
responseStream 以Ado Stream对象的形式返回响应信息。只读
responseText 将响应信息作为字符串返回.只读
responseXML 将响应信息格式化为Xml Document对象并返回,只读
status 返回当前请求的http状态码.只读
statusText 返回当前请求的响应行状态,只读

* 表示此属性是W3C文档对象模型的扩展.

方法:

abort 取消当前请求
getAllResponseHeaders 获取响应的所有http头
getResponseHeader 从响应信息中获取指定的http头
open 创建一个新的http请求,并指定此请求的方法、URL以及验证信息(用户名/密码)
send 发送请求到http服务器并接收回应
setRequestHeader 单独指定请求的某个http头

 

原文地址:https://www.cnblogs.com/JAYIT/p/4428249.html