如何更新jquery中的每一秒

时间:2010-01-25 23:41:32

标签: php jquery

我试图从php文件中获取数据并每秒更新一次,所以当php文件中的信息发生变化时,它会自动更新

 $(document).ready(function() { 
$.ajaxSetup ({
    cache: false
});
 $("#hidden").hide(); 
 $("#textfield").val(""); 
 $("#textarea").val(""); 

 var hol=$(this).attr('myval'); 
 var formContent ="action=getlink&link="+hol; 

 $.getJSON("inc/json.php",formContent, function(json){ 
 $("#textfield").val(json.name); 
 $("#textarea").val(json.desc); 
 $("#formHeader").text("Edit"); 
 $("#ajaxBox").text("All info loaded OK"); 
 });


 });

3 个答案:

答案 0 :(得分:4)

使用setInterval(),而不是setTimeout()。 setInterval将按指定的时间间隔调用该函数。

var interval = setInterval(function() { 
    /* do something that will execute every 1000 milliseconds*/ 
}, 1000);

答案 1 :(得分:3)

将该代码放入函数中并调用setTimeout()

答案 2 :(得分:0)

当收到响应或错误并重试时,它将调用。可能是比每秒检查更优雅的解决方案。

function foo()
{   
 $.ajax({
        type: "GET",
        url: ,
        data: ,
        timeout:50000, /* Timeout in ms */

        success: function(data){ /* called when request completes */
                'foo()', /* Request next message */
            );
        },
        error: function(XMLHttpRequest, textStatus, errorThrown){
            setTimeout(
                'foo()', /* Try again after.. */
                "15000"); /* milliseconds (1second) */
        },
    });
}