PHP/jquery/ajax在设定的时间间隔内加载小PHP脚本


PHP/jquery/ajax loading small php script within a set interval

我有我的主文件显示一些图形等-这工作得很好。

现在我想到了以更及时的方式显示一些温度-例如每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);

您必须在没有()的情况下调用函数,如下所示:

var callme=function () {
      $('#curtemp').load('grabsensorinfo.php');
    };
编辑:当调用load()时,您不需要传递空函数,只需将页面地址作为URL调用它。在Firefox控制台的Chrome中尝试检查它是否正常工作

然后(按照建议加载页面后):

$(function(){setInterval(callme,5000);});

否则,JavaScript将在开头调用该函数一次,然后调用返回值

看起来很奇怪,假设你现在说的是"请每5000毫秒调用这个函数的返回值",而不是"每5000毫秒调用这个函数"。