在网页中使用原生的ajax,首先第一步需要创建XMLHttprequest。创建的方式如下:
var request; if(window.XMLHttpRequest){ request = new XMLHttpRequest(); //ie7+,Fiefox,Chrome,Oprea,Safari }else{ request = new ActiveXObject("Microsoft.XMLHTTP"); //ie6,ie5 这样主要为了兼容性考虑 }
第二部:请求
XMlHttpRequest 发送请求分为两步(两个方法)
		open(method,url,async) 
    1,get或者post     2,url地址     3,同步还是异步   异步为true,同步为false,默认为true,可以不填写
		send(String) 
这个方法中send 中的string字符串可以为空。如果open()方法中为get时,则不填写。如果为post的可以填写参数。
下面几个例子
1, request.open("get","get.php",true); request.send(); 2, request.open("post","post.php",true); request.send(); 3, request.open("post","create.php",true); request.setRequestHeader("Content-type","application/x-www.form-urlencoded"); request.send("name=张三&sex=男");
第三步: Xmlhttprequest 取得响应
大致有一下这些方法:
  responseText :获取字符串形式的响应数据
		  responseXML :获取xml形式的响应数据
		  status 和 statusText :以数字和文本形式返回HTTP状态吗
		  getAllResponseHeader():获取所有的响应报头
		  getResponseHeader() : 查询响应中的某个字段的值
	
		  readyState是XMLHttpRequest对象的一个属性,用来标识当前XMLHttpRequest对象处于什么状态。
		  status是XMLHttpRequest对象的一个属性,表示响应的HTTP状态码。
获取readyState属性,获取状态,判断响应是否完成。
			  0:请求未初始化,open还没有调用
			  1:服务器连接已经建立,open已经调用。
			  2:请求已接收,也就是接收到头信息了
			  3:请求处理中,也就是接收到响应主体了。
			  4:请求已完成,且响应也已就绪,也就是响应完成了。
通过onreadystatechange 来监听XMLHttprequest 的 readyState 属性的值:
例子:
request.open("get","get.php",true);
request.send(); 
request.onreadystatechange = function(){
  if(request.readyState == 4 && request.status == 200){
    //业务处理代码    
    //request.responseText :获取字符串形式的响应数据
    //request.responseXML :获取xml形式的响应数据
  }
}
原文:http://www.cnblogs.com/weiyx/p/4361898.html