JQuery .load 事件导致内部服务器错误

JQuery .load event causes Internal Server Error

我试图通过在开头加载大部分页面来提高我网站的速度。因此,我创建了一些 div 标签,并希望通过使用 jQuery.

的加载事件将其他文件加载到它们中

这是我的源代码:

<script>
function LoadPages(){
    $(document).ready(function(){
        $("#content1").load("main.php",function(){
            $("#content2").load("page2.php");
        });
    });
}
</script>

加载我的网站时出现内部服务器错误 500。事实上,我喜欢加载多达 10 个页面,但也有 2 个出现错误。我在主体中定义 divs 后立即调用函数 LoadPages(),因此当我调用函数时 divs 存在。

注意:如果我只加载一页,则代码有效。 如果第一个加载事件的回调函数为空,该代码也有效,但如果回调不为空(例如只是一个警报语句),则错误再次出现。有谁知道可能导致错误的原因吗?

提前感谢您的帮助。

这是一个测试建议,但对于评论来说太大了:

  1. 不需要 DOM 准备好,因为(根据您的评论)您的调用代码正在定义元素,因此它们必须存在。

例如这样就可以了

<script>
    function LoadPages(){
        $("#content1").load("main.php",function(){
            $("#content2").load("page2.php");
        });
    }
</script>

注意:冗余 DOM 就绪处理程序不会造成任何伤害,因为它们会立即开火,但会浪费 space,因此最好避免。

  1. 通过重复使用您知道有效的页面来测试您的代码(例如,在两次加载中 main.php

例如

<script>
    function LoadPages(){
        $("#content1").load("main.php",function(){
            $("#content2").load("main.php");
        });
    }
</script>
  1. 通过将 URL 放入浏览器直接测试页面

例如

http://www.domain.com/main.php
http://www.domain.com/page2.php

看看页面有什么问题。