码迷,mamicode.com
首页 > Web开发 > 详细

Ajax

时间:2015-02-25 16:46:01      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

(1)页面表单:

  <form action="POST">
     <input type="text" name="userId" id="userId" onChange="getChange()" />
  <input type="submit" value="submit" id="submit" />
  </form>

(2)新建请求:

var xmlrequest = false;

   try {
    xmlrequest = new XMLHttpRequest();
   } catch (m) {
     try {
       xmlrequest = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (n) {
       try {
         xmlrequest = new ActiveXObject("Microsoft.XMLHTTP");
       } catch (failed) {
         xmlrequest = false;
       }  
     }
   }

   if (!xmlrequest)
     alert("请求建立失败");

或者:

  var xmlHttp;

  if(window.xmlHttpRequest)

  { xmlHttp = new xmlHttpRequest();}

  else

  { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");}

 

(3)发送请求
   function getChange() {
     var userId = document.getElementById("userId").value;
     var url = "index.php?userId=" + escape(userId);
     xmlrequest.open("GET", url, true);
     xmlrequest.onreadystatechange = updatePage();
     xmlrequest.send(null);
   }

(4)处理响应:  

 function updatePage() {
     if (xmlrequest.readyState == 4&&xmlrequest.status == 200) {
         var response = xmlrequest.responseText.split(";");
         document.write(response[0]);

   document.getElementById("order").value = response[0]

     document.getElementById("address").innerHTML = response[1].replace(/\n/g, "");

   } else
         alert("status is " + request.status);
   }

 

HTTP 就绪状态:

0:请求没有发出(在调用 open() 之前)。 
1:请求已经建立但还没有发出(调用 send() 之前)。 
2:请求已经发出正在处理之中(这里通常可以从响应得到内容头部)。 
3:请求已经处理,响应中通常有部分数据可用,但是服务器还没有完成响应。 
4:响应已完成,可以访问服务器响应并使用它。

Ajax

标签:

原文地址:http://www.cnblogs.com/h1359705211/p/4299657.html

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