ajax局部刷新,定时更新

使用ajax局部更新一块区域的数据,每隔3秒更新一次

以下代码以运行成功,如果问题请与我联系。

index.jsp页面:

<script type="text/javascript">

var xmlHttp;
function createXMLHttpRequest() {
    if (window.ActiveXObject) {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }else if (window.XMLHttpRequest) {
        xmlHttp = new XMLHttpRequest();               
    }
}
function refreshDate(){
    createXMLHttpRequest();  
    xmlHttp.open("GET","ManageEventServlet?action=msgalarm",true);
    xmlHttp.onreadystatechange=dowork;
    //禁止ie缓存
    xmlHttp.setRequestHeader("If-Modified-Since","0");
    xmlHttp.send(null);
    //每3秒读取数据
    setTimeout("refreshDate()", 3000);
}
function dowork(){
    if(xmlHttp.readyState == 4){

        //获得servlet中传递过来的数据放到要现实的区域中

       var tag = document.getElementById("container");

       tag.innerHTML = "";

       tag.innerHTML = xmlHttp.responseText;

    }
}

</script>

<div id="container"><!--要更新的区域-->

<table>

<tr><td>user</td><td>pwd</td></tr>

</table>

</div>


ManageEventServlet.java中:

String action=request.getParameter("action");

if("msgalarm".equals(action)){

user=从数据库中取得的用户

String name=user.getName();

String pwd=user.getPwd();

PrintWriter out = response.getWriter();

out.print("<table>");

out.print("<tr>");

out.print("<td>"+name+"</td>");

out.print("<td>"+pwd+"</td>");

out.print("<tr>");

out.print("</table>");

}


你可能感兴趣的:(java,Ajax,局部刷新)