Ajax

(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:响应已完成,可以访问服务器响应并使用它。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。