我在覆盆子pi上使用apache来托管一个页面,以便在内部网络上查看。该页面包含显示来自csv文件的数据的amcharts图。 csv文件每分钟更新一次。有没有办法强制图表更新?
我已经尝试过以下方法: 在html重新加载中使用meta标记 在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);
答案 0 :(得分:2)
尝试在网址末尾添加随机变量。
loadCSV("daily.csv?q="+Math.random());