从 php 脚本更新 javascript 值


Updating a javascript value from a php script

我有这个代码:

var intervalID = window.setInterval(myCallback, 5000);
function myCallback() {
  g.refresh(Math.floor((Math.random() * 100) + 1), 100);
}

而且它工作正常。每 5 秒我就会得到一个新的随机值。

我想从 php 脚本中获取随机值,所以我将代码更改为:

var intervalID = window.setInterval(myCallback, 5000);
function myCallback() {
  g.refresh(<?php echo $rand(1,100)?>);
}

但是这段代码只执行一次,5 秒后我得到的新值就不多了......(或者返回的随机值总是相同的?

为什么?谢谢!

你可以做一个返回随机值的PHP代码。在此页面中,只需"回显"一个随机值。然后,发出 Ajax 请求以获取值:

var intervalID = window.setInterval(myCallback, 5000);
function myCallback() {
  $.ajax({
    url: random.php,
  }).done(function(data) {
    g.refresh(data);
  });
}

你应该使用 Ajax 向 php 脚本"询问"下一个值。

Php 只生成页面(这里是 javascript 的一部分),但如果你查看渲染页面的源代码(Mozilla 中的 ctrl +u),你会看到:

var intervalID = window.setInterval(myCallback, 5000);
function myCallback() {
   g.refresh(123);
}

其中"123"是第一次生成的值。