2011-08-01 155 views
0

我需要關閉一個父窗口加載的彈出窗口。如何關閉父窗口中的彈出窗口?

這個彈出窗口是我的webapp中的一個Documentviewer窗口。

我需要通過點擊母版頁中的註銷按鈕來關閉此查看器。

我的代碼:

public string MySession //server side code 

{ 
    get 
    { 
     if (Session["RegID"] != null) 
     { 
      return Session["RegID"].ToString(); 
     } 
     else 
     { 
      return ""; 
     } 
    } 

} 


//client side code 
    $(window).load(function() { 

     Start(); 
    }); 


    function Start() 
    { 
     timedCount(); 
     var t=setTimeout("Start()",10000); 
    } 


    function timedCount() 
    { 
    /*var out="<%=Session["RegID"]%>";*/ 


     var out='<%=MySession%>'; 
     if(out!="") 
     { 
     alert(out);  
     }else 
     { 
     window.close(); 
     } 

    } 

服務器代碼僅在第一次執行。

我的目標是關閉彈出窗口,如果它在用戶註銷時打開。

回答

2

你可能有你的父母頁面上是這樣的:

window.open(...); 

如果將其更改爲:

var popup = window.open(...); 

然後在任何時候都可以通過編碼關閉:

popup.close(); 

http://jsfiddle.net/pimvdb/bjkNx/1/

+0

lnkbtnView.Attributes.Add( 「點擊」, 「的javascript:window.open( '?demo.aspx upkey = 1&PRODNAME = AAA')」 lnbtnView是一個LinkBut​​ton存在一個GridView ....顯示我不能保持一個可變的彈出窗口,如你所說... –

0

把你的彈出窗口中的全局變量:

<script> 
    var popupWindow; 

    function openw(url) { 
     popupWindow = window.open(url, "popup", ""); 
    } 

    function closew() { 
     if (popupWindow) { 
      popupWindow.close(); 
     } 
    } 

</script> 
<a href="javascript:openw('about:blank')">open</a><br /> 
<a href="javascript:closew()">close</a>