2011-04-04 124 views
3

我有一個頁面,它使用window.open打開另一個頁面,並執行一些工作並刷新整個父頁面。是否有可能使用JQuery/Javascript刷新父頁面上的div/table的內容?重新加載html元素

供參考:這裏的div的內容沒有改變有一個圖像裏面的div是由我想更新的子窗口編輯的,但該圖像沒有唯一的ID,所以我想刷新整個div。

謝謝。

回答

3

您可以使用jQuery的​​方法來快速更新容器

http://api.jquery.com/load

簡單的內容作爲

$('#result').load('ajax/test.html', function() { 
    alert('Load was performed.'); 
}); 
+0

唯一的潛在問題是緩存,如果圖像的內容改變但src沒有。 – 2011-04-04 17:08:05

+0

@Mathew yup,如果URL是相同的,那麼你需要在最後添加一個隨機值或類似的東西來強制一個新的獲取 – JohnP 2011-04-04 17:10:33

3

純JavaScript(不JQuery的)解決方案:包裝您的DIV中一個iframe,給它一個id myFrame,然後像這樣從小孩刷新它:

parent.document.getElementById("myFrame").reload(); 
0
$("#myDiv", window.parent.document).load("page.html", function(){ 
    alert("Portion of page loaded"); 
}); 

$()的第二個參數是要搜索的上下文。默認爲文檔。

如果您想從html字符串重新加載而不是使用其他頁面,則可以使用.html()而不是.load()。