2014-02-21 41 views
0

我在覆盆子pi上使用apache來託管一個頁面以便在內部網絡上查看。該頁面由顯示csv文件數據的amcharts圖形組成。 csv文件每分鐘更新一次。有沒有辦法強制圖形更新?JavaScript強制csv文件重新加載(amcharts)

我已經嘗試以下方法:使用 在HTML元標記加載在 的JavaScript使用setTimeout的強制重新加載。

第一種方法沒有在某些瀏覽器工作,第二部作品(但不是IE瀏覽器,這是我需要它的工作!)

基本上,我需要的瀏覽器不緩存引用的CSV文件。任何建議非常感謝!我已經包含了引用下面的csv文件的js,並且如果需要的話可以包含整個頁面。

感謝

  loadCSV("daily.csv"); 
     }); 

     function loadCSV(file) { 
      if (window.XMLHttpRequest) { 
       // IE7+, Firefox, Chrome, Opera, Safari 
       var request = new XMLHttpRequest(); 
      } else { 
       // code for IE6, IE5 
       var request = new ActiveXObject('Microsoft.XMLHTTP'); 
      } 
      // load 
      request.open('GET', file, false); 
      request.send(); 
      parseCSV(request.responseText); 
     } 

     function parseCSV(data) { 
      //replace UNIX new lines 
      data = data.replace(/\r\n/g, "\n"); 
      //replace MAC new lines 
      data = data.replace(/\r/g, "\n"); 
      //split into rows 
      var rows = data.split("\n"); 

      // loop through all rows 
      for (var i = 9; i < 19; i++) { 
       // this line helps to skip empty rows 
       if (rows[i]) { 
        // our columns are separated by comma 
        var column = rows[i].split(","); 
        // column is array now 

        // first item is date 
        var time = column[0]; 
        // second item is value of the second column 
        var value = column[1]; 
        // third item is in the fourth column 
        var value2 = column[5]; 

        var value3 = column[3]; 

        // create object which contains all these items: 
        var dataObject = { 
         time: time, 
         actual: value, 
         target: value2, 
         scrap: value3 
        }; 
        // add object to chartData array 
        chartData.push(dataObject); 

回答

2

嘗試URL的末尾附加一個隨機變量。

loadCSV("daily.csv?q="+Math.random()); 
+0

這正是我想要的,謝謝! – beth

+0

不要介意將其標記爲正確答案;) –