我目前有以下代码。当从tv.php返回“true”时,代码似乎停止了。如何让这段代码每隔60秒检查一次tv.php,并重复一遍,不管TV.php返回什么? (我希望每次检测到“真”时刷新,并且每60秒无限次检查一次)
$(document).ready(function(){
setInterval(function() {
$.ajax({
url: 'checktime.php',
success: function(refresh){
if($.trim(refresh) == "true"){
$('#tv').load('tv.php');
}
}
});
}, 60000);
});
答案 0 :(得分:1)
尝试:
function ref(){
$.ajax({
url: 'checktime.php',
success: function(refresh){
if($.trim(refresh) == "true"){
$('#tv').load('tv.php', function(){
setTimeout(ref, 60000); // Do again after 60s
});
}
}
});
}
ref(); // First run
答案 1 :(得分:0)
我的猜测是加载tv.php时有异常。检查控制台输出是否存在可能的异常您也可以尝试添加try / catch:
$(document).ready(function(){
setInterval(function() {
$.ajax({
url: 'checktime.php',
success: function(refresh){
if($.trim(refresh) == "true"){
try {
$('#tv').load('tv.php');
} catch(err) {}
}
}
});
}, 60000);
});