在div中刷新php脚本

时间:2015-02-11 08:45:09

标签: javascript php jquery html

我目前正在使用以下脚本刷新div中的messages.php,时间间隔为60秒。

<script>
jQuery().ready(function(){
setInterval("getResult()",60000);
});
function getResult(){   
jQuery.post("messages.php",function( data ) {
    jQuery("#msgs").html(data);
});
}
</script>
<div id="msgs">
</div>

我目前的问题是,在60秒过后,php文件的回显首次显示。然后每60秒刷新一次。 我需要在启动页面时加载代码。

4 个答案:

答案 0 :(得分:1)

在DOM Ready上调用getResult()

<script>
jQuery().ready(function(){
getResult();
setInterval("getResult()",60000);
});
function getResult(){   
jQuery.post("messages.php",function( data ) {
    jQuery("#msgs").html(data);
});
}
</script>
<div id="msgs">
</div>

答案 1 :(得分:1)

我每次都会使用setTimeout:

<script>
jQuery().ready(function() {
    function getResult() {
       $('#msgs').load('messages.php', {});
       setTimeout(getResult, 60000);
    }

    getResult();
}
</script>
<div id="msgs"></div>

替代回调中的重新启动(A. Wolff的建议,如果messages.php需要很长时间才能完成):

<script>
jQuery().ready(function() {
    function getResult() {
       $('#msgs').load('messages.php', {}, function() {
           setTimeout(getResult, 60000);
       });
    }

    getResult();
}
</script>
<div id="msgs"></div>

答案 2 :(得分:0)

为了获取页面加载数据,请在DOM ready事件上调用getResult(),如下所示: -

<script>
jQuery().ready(function(){
  getResult();  //it will get data as soon as page is loaded.
  setInterval("getResult()",60000); // it will refresh #msgs after every 1 min.
});
function getResult(){   
  jQuery.post("messages.php",function( data ) {
    jQuery("#msgs").html(data);
  });
}
</script>
<div id="msgs">
</div>

答案 3 :(得分:0)

<script>
jQuery().ready(function(){
   getResult();
   setInterval("getResult()",60000);
});
function getResult(){   
jQuery.post("messages.php",function( data ) {
    jQuery("#msgs").html(data);
});
}
</script>
<div id="msgs">
</div>

使用此代码..