2012-03-05 43 views
-4

可能重复:
jQuery refresh if PHP file echo's 'true'刷新div如果PHP页面返回true?

我有我的指标以下DIV:

<div id='tv'> <? include 'tv.php' ?> </div> 

我有在tv.php和回报率变化内容的脚本“真正'在一个叫做checktime.php的特定时间。

我试图让索引头中的jQuery每10秒检查一次PHP页面,如果checktime.php返回'true',jquery'刷新'#tv div的内容。这是我目前拥有的代码,但它不起作用。它似乎检查checktime.php但div不会自动刷新。

<script src="http://code.jquery.com/jquery-latest.js"></script> 

<script type="text/javascript"> 
$(document).ready(function(){ 
    setInterval("checkTime()", 10000); 
    function checkTime(){ 
     $.ajax({ 
      url: 'checktime.php', 
      success: function(refresh){ 
       if($.trim(refresh) == "true"){ 
        $('#tv').load('tv.php'); 
       } 
      } 
     }); 
    } 

}); 
</script> 
+0

您是否已经验证 '刷新' 的值('的console.log(刷新)') ?你是否证实了tv.php的输出实际上在两次调用之间变化? – 2012-03-05 22:04:57

+0

尝试隐式设置了'dataType'在'$。阿贾克斯()'调用。也许它不会将返回数据解释为文本或html。 – Crontab 2012-03-05 22:06:54

+1

不只是重复的,而是同一个用户。 ;-)大安,你不需要在第二个线程中提出同样的问题。我同意Crontab,这就是为什么我建议在其他线程中使用JSON。最起码,尝试提醒“$ .trim(刷新)”的价值,看它是否就是你要找的,或者不是。 – 2012-03-05 22:06:56

回答

0

看看这对你的作品更好,你需要调整的setInterval用jQuery工作:

$(document).ready(function(){ 
    setInterval(function() { 
     $.ajax({ 
      url: 'checktime.php', 
      success: function(refresh){ 
       if($.trim(refresh) == "true"){ 
        $('#tv').load('tv.php'); 
       } 
      } 
     }); 
    }, 10000); 

});