2013-07-04 189 views
1

我有兩個ASPX頁面。在第一頁中,我使用來自數據庫的值顯示Grid,並在第二頁顯示了彈出窗口,其中用戶可以看到另一個GridView,並且可以從此頁面添加成員。在他們從彈出窗口添加成員並關閉後,我的要求是刷新第一頁,以便其網格重新加載GridView中的新增加的成員。誰可以幫我這個事?我想這下面的代碼,但是這並沒有幫助:如何在關閉彈出窗口時刷新父頁面

function refreshParent() { 
     window.opener.location.href = window.opener.location.href; 

     if (window.opener.progressWindow) { 
      window.opener.progressWindow.close() 
     } 
     window.close(); 
    } 

    <body onunload="refreshparent();"> 

而另一個問題是我使用彈出窗口中多了一個服務器端的按鈕,只要按下按鈕,窗口關閉,刷新父頁。但是我想讓用戶輸入關閉彈出窗口。

您的幫助將如此可觀。

感謝

+0

閱讀開始http://jsbin.com/osejuj/1/edit。現在您嘗試將函數refreshParent附加到PopUp上了嗎? – a0viedo

回答

7

你可以用下面的代碼繼續:

父頁面

HTML

<script type="text/javascript"> 
    function OpenPopup() { 
     window.open('ChildPopupWindows.aspx', '', 'width=200,height=100');    
    }; 
</script> 

<input type="button" value="Open popup" onclick="javascript: return OpenPopup()" /> 

子頁面

HTML

<script type="text/javascript"> 
    function CloseWindow() { 
     window.close(); 
     window.opener.location.reload(); 
    } 
</script> 

<asp:Button ID="btnServer" runat="server" OnClick="btnServer_Click" Text="Request server" /> 
    <br />   
    <input type="button" value="Close Window" onclick="javascript: return CloseWindow();" /> 

C#

protected void btnServer_Click(object sender, EventArgs e) 
    { 

    } 

說明

當你點擊 「請求服務器」 按鈕,服務器回傳將發生,而你的子窗口將不會是clo SED。

當您點擊「關閉窗口」按鈕時,您的子窗口將會關閉,這也會刷新您的父頁面。

查詢歡迎...

+0

非常感謝你的好解決方案..我真的很感激它.. – barsan

0

在您的關閉按鈕,您可以添加以下代碼

Response.Write("<script language=JavaScript> opener.location.reload(); </script>") 
Response.Write("<script language='javascript'> { window.close();}</script>") 
相關問題