2012-06-02 36 views
5
$(document).load("somepage.aspx", function (responseText, textStatus, xhr) { 

}); 

这不起作用。
有什么方法可以使用加载函数来替换整个文档,包括头部?是否有可能使用JQuery.Load()替换整个文档?

编辑:我不想刷新我的页面,我必须使用AJAX。

+1

的HTML'

的正常内置行为'是运行一个HTTP请求和替换以上是返回什么整个页面... – Pointy

+0

要“更换整个文件包括头”是恰恰与刷新页面完全一样。我怀疑你想要做的是替换内容,但保留窗口属性等等,对吧?你应该更清楚地说明。 – Pointy

+0

我使用ajax接收来自我的服务器的推送通知,我想避免刷新我的页面并在后台使用ajax。 Beatport.com做了类似的事情,所以即使你继续浏览,他们的音频播放器仍然会播放。 – Adir

回答

0

您可以使用Jquery Ajax查询从服务器中获取一些html文件,并从文档中删除所有内容并将其替换为内容。

+0

我尝试过,但使用innerHTML(或JQuery html函数)去除加载页面内的脚本标签。 – Adir

0

您可以添加iframe并将新页面加载到其中。

0
$(function(){ 
    $.get('my_page.html', function(e){ 
     $(document).empty().append(e); 
    }); 
}); 

试试看。 my_page.html被加载,然后jQuery找到文档对象,删除所有内容并将其附加到my_page.html内容中。

+0

这给了我一个空白的文档,不知道为什么 – Adir

+0

您需要将'my_page.html'更改为您要加载的页面。 – dotty

+0

那不是问题... – Adir

0

当页面完全加载时,您应该重定向您的页面。

$(window).load(function(){ 
     document.href.location = "your_page"; 
    }); 
+0

我需要使用ajax – Adir

7
$.get("somepage.aspx", function (data) { 
    document.open(); 
    document.write(data); 
    document.close(); 
    $.cache = {}; 
}, "text"); 
+0

这会导致刷新。 – Adir

+0

@Adir nope,你为什么这么认为。 – Esailija

+0

我不这么认为,我试过了(Firefox 12) – Adir

相关问题