使用jquery更新div的内容

时间:2014-03-24 19:04:20

标签: jquery settimeout auto-update

我有这段代码

    <script>
    function update() {
      $.get("note.php?load=true", function(data) {
        $("#note").html(data);
        window.setTimeout(update, 3000);
      });
    }
    </script>
    <div id="note"><?php
include("note.php?load=true");
?></div>

其中“note.php?load = true”是我有一个内容的网址,我想在div中显示“#note”,每隔3秒更新一次。 当我加载该代码时,我可以看到note.php的内容?load = true,因为我已经通过php包含它以在页面加载时立即显示它,但它只是不更新​​。 任何人都可以告诉我为什么?

3 个答案:

答案 0 :(得分:0)

您从不首先致电update()

答案 1 :(得分:0)

在调用更新函数之前,它不会更新。尝试把window.setTimeout(update,3000);具有更全局范围的某个地方,以便实际调用您的更新函数。

答案 2 :(得分:0)

只是为了澄清一下,您是否希望在页面仅通过JS加载或通过PHP加载时加载注释,然后通过JS定期更新?

如果是后者,请试试这个:

<script>
    var updateId = setInterval(function() {
        $.get('note.php?load=true', function(data) {
            $('#note').html(data);
        });
    }, 3000);
</script>
<div id="note">
    <?php include("note.php?load=true");?>
</div>

这样,当页面发送到客户端时,您最初会加载注释。之后,setInterval函数将每3秒触发一次(3000毫秒)并刷新div的内容。