2013-10-07 100 views
0

我有一個非常經典的折線圖,從JSON格式的PHP腳本獲取數據。 但是,我想定期更新該圖。谷歌折線圖,刷新數據表

var jsonData1 = $.ajax({ url:"./scripts/json_papp.php", dataType:"json", async:false }).responseText; 
var data1 = new google.visualization.DataTable(jsonData1); 
var chart1 = new google.visualization.LineChart(document.getElementById('papp_div')); 
chart1.draw(data1, opt1); 
setInterval("updatePAPP()", 6000); 

function updatePAPP() { 
// here I need to get again the data from the script and draw it again. 
} 

回答

0

你可以嘗試這樣的:

function updatePAPP() { 
    $.ajax({ url:"./scripts/json_papp.php", dataType:"json", async:false }).done(function(jsonData1) { 
     var data1 = new google.visualization.DataTable(jsonData1); 
     var chart1 = new google.visualization.LineChart(document.getElementById('papp_div')); 
     chart1.draw(data1, opt1); 
    } 
} 
+0

那是不行的,沒有錯誤,但該圖沒有更新。我不確定用另一個「新覆蓋」實際圖(新變量是本地的)是一個好方法。並使全球變量不工作。 – Singman

+0

也許我應該找到一種方法來清除數據表,在其上放置新數據並重繪圖。但是沒有任何方法可以清除數據表... – Singman

+0

好的,已批准。我的不好,弄亂了一些全局變量和局部變量。我更改了updatPAPP()函數中的名稱以避免混淆,並且它正在工作。但我不確定這個解決方案長期不會吃掉記憶。 – Singman