2015-06-02 56 views
0

我正在嘗試創建一個web應用程序,該應用程序將在JSON文件更新時顯示信息並進行更新。我的當前代碼只在JSON文件更新並刷新頁面時纔會更新。關鍵是不要刷新頁面。這裏是我現在的代碼如何使用jquery更新網站信息而不刷新

<script> 
      $.getJSON('package.json', function (data) { 
       for (var i in data) { 
        var username = data[i].username; 
        var value = data[i].value; 
        var tokens = data[i].tokens; 
        $("#playerlist").append('<tr><td>-' + username + ' has deposited $' + value + ' in ' + tokens + ' tokens' + '</td></tr>'); 
       } 
      }); 
     </script> 

任何幫助,非常感謝。謝謝!

+0

使用setInterval(), – Dreamweaver

+0

在一段時間間隔後調用getJSON你會想爲此做一個'ajax'請求。 – mwilson

+0

@Dreamweaver:你的意思是'setInterval'(和/或'setTimeout' - 我會使用'setTimeout'並重新安排它,因爲否則你有兩個異步進程交互,並且它變得混亂*快*) –

回答

1
By using SetInterval we can update the UI in some timeinterval. 

    function refreshContent() 
     { 
     $.getJSON('package.json', function (data) { 
         for (var i in data) { 
          var username = data[i].username; 
          var value = data[i].value; 
          var tokens = data[i].tokens; 
          $("#playerlist").append('<tr><td>-' + username + ' has deposited $' + value + ' in ' + tokens + ' tokens' + '</td></tr>'); 
         } 

        setTimeOut(refreshContent, 1000) /// again wait for 1 sec and do refresh 
        }); 
     } 

     setTimeOut(refreshContent, 1000) \\\this will update in every 1 sec. 
+0

實際上,它所做的每一秒都會將HTML附加到網站上。它只需要更新它。 – NightShadows

+0

@NightShadows:根據需要稍微修改一下。 –

+1

@ T.J好聽。將改變代碼:) – Dreamweaver