多个文档准备函数相互覆盖


multiple document ready functions overwriting one another

我有两个查询一个在文件test.php和一个在文件test2.php…我想刷新div每5秒,但是div #test的内容被div test2的内容覆盖。为什么会发生这种情况?我怎么修理它?

<script>
    $(document).ready(function() {
         $("#test").load("test.php");
         var refreshme = setInterval(function() {
             $("#test").load('test.php');
         }, 5000);
         $.ajaxSetup({ cache: false });
    });
    </script>
<div id="test">
    <?php
    include ('test.php');
    ?>
</div>
<br>
<script>
    $(document).ready(function() {
         $("#test2").load("random.php");
         var refreshId = setInterval(function() {
             $("#test2").load('random.php');
         }, 5000);
         $.ajaxSetup({ cache: false });
    });
    </script>
<div id="test2">
    <?php include 'test2.php' ?>
</div>

您的.load()函数之一将覆盖其他内容的唯一方法是,如果您正在加载的对象之一是另一个的子对象。您还应该确保文档中没有多个具有给定id的对象,因为这可能导致jQuery选择器选择错误的对象。

您可能需要查找任何丢失的关闭标记,以防其中一个由于丢失标记而意外地成为另一个的子标记。

两个$(document).ready()调用不冲突,不覆盖。它们只是将多个函数排队,以便在文档准备好时调用。