我的主文件显示了一些图表等 - 这很好用。
现在我提出了以更及时的方式显示温度的想法 - 就像 - 每次刷新2到10次一样。
我添加了一个小小的PHP脚本,它会爆炸传感器信息并对其进行格式化,这本身就可以正常工作:
$sensor1 = file_get_contents('sensor1');
$sensorinfo1 = explode ("t=", $sensor1);
$sensor2 = file_get_contents('sensor2');
$sensorinfo2 = explode ("t=", $sensor2);
printf("Aktuelle Temperaturen: Sensor1: %s Sensor2: %s", $sensorinfo1[1] / 1000,$sensorinfo2[1] / 1000);
我对Javascript,Ajax和jQuery的了解相当......好吧。让我们不要谈论它。 经过一段时间的搜索后,我想出了以下几件事情(它不起作用,我不知道为什么):
setInterval(function () {
$('#curtemp').load('grabsensorinfo.php', function () {
}, 5000);
});
和div元素:
<div class="curtemp">
</div>
所以我想要的是div元素每X秒更新一次.. 任何人都知道我哪里出错了?
这就是我现在所做的 - 不再工作:
var tempUpdate=function() {
$('#curtemp').load('grabsensorinfo.php')
};
setInterval(tempUpdate,5000);
答案 0 :(得分:1)
您必须以()
方式调用该函数,这样:
var callme=function () {
$('#curtemp').load('grabsensorinfo.php');
};
编辑:调用load()
时不需要传递空函数,只需将页面地址作为URL调用即可。在Firefox控制台的Chrome浏览器中尝试检查它是否正常工作
然后(按建议加载页面后):
$(function(){setInterval(callme,5000);});
否则,JavaScript会在开头调用该函数一次,然后调用返回的值。
看起来很奇怪,让我们说现在你说“请,每隔5000毫秒调用此函数的返回值”,而不是“每5000毫秒调用一次这个函数”