在vb.net中关闭弹出窗口时刷新部分父页面

时间:2015-12-04 12:41:02

标签: asp.net vb.net

点击按钮,弹出窗口打开。在子窗口中,我进行了一些更改,当我保存时,弹出窗口需要关闭,部分父页面就像单个更新面板一样刷新。

我不希望完整的父页面刷新。

1 个答案:

答案 0 :(得分:1)

您必须从弹出窗口中触发刷新目标更新面板的事件。一种方法是使用window.opener元素。

以下是弹出窗口中的代码示例,您可以根据项目进行调整。请注意,您需要将“btnTriggersUpdate”更改为给予任何Button触发更新面板刷新的ClientID。

<asp:Button runat="server" ID="btnRefreshParentUpdatePanel" OnClientClick="window.opener.document.getElementById('btnTriggersUpdate').click();" Text="Refresh Parent Update Panel" />

在我的示例中,这是父级中的更新面板:

<asp:UpdatePanel ID="upnTarget" runat="server">
    <ContentTemplate>
        <asp:Label id="lblUpdatePanelLabel" runat="server" Text="Not Updated"></asp:Label>
        <asp:Button ID="btnTriggersUpdate" runat="server" Text="Refreshes Update Panel" />
    </ContentTemplate>
</asp:UpdatePanel>  

父母的btnTriggerUpdate_Click以证明其更新:

Protected Sub btnTriggersUpdate_Click(sender As Object, e As EventArgs) Handles btnTriggersUpdate.Click
    lblUpdatePanelLabel.Text = "Updated"
End Sub