Ajax局部頁面刷新

ajax自動刷新局部頁面

 

     經過 AJAX,JavaScript 可以使用 JavaScript 的 XMLHttpRequest 對象來直接與服務器進行通訊。經過這個對象, JavaScript 可在不重載頁面的狀況與 Web 服務器交換數據。javascript

 

     AJAX 在瀏覽器與 Web 服務器之間使用異步數據傳輸(HTTP 請求),這樣就可以使網頁從服務器請求少許的信息,而不是整個頁面。html

 

     實驗中利用JSP+ajax來實現自動刷新頁面,並讀/寫數據庫中的數據。java

 

    下面介紹一下利用JSP+ajax來實現局部頁面刷新的小例子:node

 

處理ajax請求的jsp文件:ajax.jspajax

 

 

 

複製代碼
    <%@ page contentType="text/html; charset=gb2312" %>  <% //設置輸出信息的格式及字符集 response.setContentType("text/xml; charset=UTF-8"); response.setHeader("Cache-Control","no-cache"); out.println("<response>"); for(int i=0;i<2;i++){ out.println("<name>"+(int)(Math.random()*10)+ "號傳感器</name>"); out.println("<count>" +(int)(Math.random()*100)+ "</count>"); } out.println("</response>"); out.close(); %> 
複製代碼

 

 

 

發送ajax請求的jsp文件:zx.jsp數據庫

 

複製代碼
    <head> <META http-equiv=Content-Type content="text/html; charset=gb2312"> </head> <script language="javascript"> var XMLHttpReq; //建立XMLHttpRequest對象 function createXMLHttpRequest() { if(window.XMLHttpRequest) { //Mozilla 瀏覽器  XMLHttpReq = new XMLHttpRequest(); } else if (window.ActiveXObject) { // IE瀏覽器 try { XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } } //發送請求函數 function sendRequest() { createXMLHttpRequest(); var url = "ajax.jsp"; XMLHttpReq.open("GET", url, true); XMLHttpReq.onreadystatechange = processResponse;//指定響應函數  XMLHttpReq.send(null); // 發送請求  } // 處理返回信息函數 function processResponse() { if (XMLHttpReq.readyState == 4) { // 判斷對象狀態 if (XMLHttpReq.status == 200) { // 信息已經成功返回,開始處理信息  DisplayHot(); setTimeout("sendRequest()", 1000); } else { //頁面不正常  window.alert("您所請求的頁面有異常。"); } } } function DisplayHot() { var name = XMLHttpReq.responseXML.getElementsByTagName("name")[0].firstChild.nodeValue; var count = XMLHttpReq.responseXML.getElementsByTagName("count")[0].firstChild.nodeValue; document.getElementById("product").innerHTML = name; document.getElementById("count").innerHTML = count; } </script> <body onload =sendRequest()> <table style="BORDER-COLLAPSE: collapse" borderColor=#111111 cellSpacing=0 cellPadding=0 width=200 bgColor=#f5efe7 border=0> <TR> <TD align=middle bgColor=#dbc2b0 height=19 colspan="2"><B>無線傳感網</B> </TD> </TR> <tr> <td height="20"> 傳感器:</td> <td height="20" id="product"> </td> </tr> <tr> <td height="20">傳感器個數:</td> <td height="20" id="count"> </td> </tr> </body> </table> 
複製代碼

 

  效果以下(頁面上的值自動變化):瀏覽器

 

相關文章
相關標籤/搜索