2010-06-28 214 views
0

我想讓代碼儘快關閉父窗口在asp.net中關閉窗口。當父窗口關閉時自動關閉子窗口

這是如何實現的?

+0

這是一個JavaScript技巧,而不是一個asp.net。你能提供一些代碼嗎,你如何打開子窗口? – Aristos 2010-06-28 10:31:05

+0

我打開子窗口通過單擊超鏈接。 現在我想,如果我關閉父窗口,子窗口,即child.aspx應該關閉.. 告訴我在javascript – jasmeet 2010-06-28 10:42:18

+0

你應該保持在父窗口中的子窗口的引用(確保它打開的JavaScript而不是在默認情況下,href),添加一個監聽器到父窗口的關閉窗口,它將關閉所有的子窗口。 – Redlab 2010-06-28 11:17:08

回答

1

「依賴」不再有效。 Redlab評論說,你需要跟蹤。 一些瀏覽器將不會執行腳本,從卸載事件調用,但試試這個

<script type="text/javascript"> 
var childWin = []; 
function openWin(link) { 
    var childWin[childWin.length] = window.open(link.href,link.target,'dependent'); 
    return childWin[childWin.length-1]?false:true; // if popup blocker 
} 
function closeWin() { 
    for (var i=0;i<childWin.length;i++) { 
    if (childWin[i] && !childWin[i].closed) childWin[i].close(); 
    } 
} 
window.onunload=function() { closeWin(); } 

</script> 


<a href="page.html" target="_blank" onClick="return openWin(this)">Pop</a>