Jquery e、 preventDefault不加载没有Ajax数据的空页面

Jquery e、 preventDefault不加载没有Ajax数据的空页面,jquery,Jquery,我在Jquery中使用e.preventDefault()将html页面加载到一个页面中。html页面有一些Ajax操作,可以从服务器获取数据。我发现它可以显示页面,但不能显示它得到的Ajax数据。在我看来,中的页面显示似乎发生在ajax回调数据之前。但是在没有e.prevent默认设置的情况下,当点击链接时,页面将打开一个新页面,并且它将处理从ajax页面返回的所有数据。延迟加载页面的任何解决方案或帮助 $(document).ready(function() { $('a').cli

我在Jquery中使用e.preventDefault()将html页面加载到一个页面中。html页面有一些Ajax操作,可以从服务器获取数据。我发现它可以显示页面,但不能显示它得到的Ajax数据。在我看来,中的页面显示似乎发生在ajax回调数据之前。但是在没有e.prevent默认设置的情况下,当点击链接时,页面将打开一个新页面,并且它将处理从ajax页面返回的所有数据。延迟加载页面的任何解决方案或帮助

$(document).ready(function() {
    $('a').click(function (e) {                    
        $("#content").load($(this).attr("href"));               
        e.preventDefault();      
    });             
}); 

最有可能的原因是您正在加载的页面触发了作为事件处理程序一部分的ajax请求。例如

$(document).ready(function(){
   fetchDataByAjax();
}
但是,当您通过ajax加载它时,不会触发该事件。文档准备就绪事件已发生,并且只会发生一次


为了使它正常工作,您需要将javascript添加到一个公共位置,并将其包含在两个页面中。在其中一种情况下,您仍将执行document.ready或您使用的任何方法),而在另一种情况下,您将在将html插入内容时执行它首先,然后是加载方法???这样做了。。同样的结果。