2011-06-13 103 views
0

我想更新表格單元格以獲取從jsp方法獲得的狀態。該方法需要一些時間,因此它不是即時的。因此,我需要AJAX刷新頁面,一旦該方法完成如何使用ajax刷新表格

<script type="text/javascript"> 

    function updateTable() 
     { 
      var xmlhttp; 
      var table = document.getElementById('theTable'); 

      if (window.XMLHttpRequest) 
      {// code for IE7+, Firefox, Chrome, Opera, Safari 
       xmlhttp=new XMLHttpRequest(); 
      } 

      else 
      {// code for IE6, IE5 
       xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
      } 

      xmlhttp.onreadystatechange=function() 
      { 

       if (xmlhttp.readyState==4 && xmlhttp.status==200) 
       { 
        document.getElementById('theTable').innerHTML=xmlhttp.responseText; 
       } 
      } 

      xmlhttp.open(???); 
      xmlhttp.send(); 

     } 

    //Refresh every 2 seconds 
    setInterval(doStuff, 2000); 

</script> 

     <!-- The actual Table needed to updated --> 

    </TABLE> 
    <TABLE id="theTable"> 
    <TH>status</TH> 
    <tr> 
     <td><%=status%></td> 
    </tr> 
    </table> 

回答

0

在你需要被調用時產生的表數據的JSP頁面的服務器來獲取更新狀態。說這叫做generatetable.jsp。然後,您可以在open()方法中使用該URL來調用jsp頁面。

您的回調函數將處理在接收到新表格數據時用當前表格數據替換當前表格數據。

+0

open方法看起來假設我們已經生成了table.jsp – stackoverflow 2011-06-13 17:39:36

+0

open(「GET」,「generatetable.jsp」)。 – 2011-06-13 17:48:21