Jquery加载到同一个脚本中

时间:2014-11-08 17:17:02

标签: javascript php jquery html ajax

对不起,如果已经提出这个问题,我很抱歉。我无法找到它。

我正在制作一个AJAX聊天系统。它变得很棒,我遇到的唯一问题是我需要聊天才能每秒自动刷新一次。我知道可以使用load()函数...

完成此操作

但是我想刷新div和它里面的PHP,现在从另一个脚本加载它。 我的代码片段(JS):

    <script>   
    setInterval(function() {
    $('#container').load();
    }, 1000); </script>

div我想每秒重新加载/刷新一次:

<div class="container" id="container">
                  <?php
                  $queryChat    = $mysqli->query("SELECT id,message,username,date FROM chat ORDER BY id DESC LIMIT 0, 10");
                  while($infoChat = $queryChat->fetch_array())
                  {
                  ?>
                    <div class="text">
                        <div class="name"><?php echo $infoChat['username']; ?></div>
                        <div class="time"><?php echo $infoChat['date']; ?></div>
                        <div class="body"><?php echo $infoChat['message']; ?></div>
                    </div>
                  <?php
                  }
                  ?>
                  </div>

如果我做$('#container').load('index.php');它会给我这个(网站也会很慢):$(&#39;#container&#39;)。load(&#39; index.php&# 39);

非常感谢您提前帮助!我的英语也很糟糕,因为它不是我的母语: - )

1 个答案:

答案 0 :(得分:1)

您认为include()内的<div class="container" id="container">个“消息池”脚本不是更清晰,以便您的主聊天页面现在具有:

<div class="container" id="container">
<?php
include("chatScript.php");
?>
</div>

然后chatScript.php将包含:

<?php
    $queryChat    = $mysqli->query("SELECT id,message,username,date FROM chat ORDER BY id DESC LIMIT 0, 10");
    while($infoChat = $queryChat->fetch_array())
    {
    ?>
    <div class="text">
        <div class="name"><?php echo $infoChat['username']; ?></div>
        <div class="time"><?php echo $infoChat['date']; ?></div>
        <div class="body"><?php echo $infoChat['message']; ?></div>
    </div>
    <?php
    }
?>

然后你可以简单地做

<script>
    setInterval(function() {
    $('#container').load();
    }, 1000); 
</script>
加载<div class="container" id="container">

希望这有帮助