Javascript:强制aspx父页刷新服务器

Javascript: Force aspx parent page to server refresh

本文关键字:刷新 服务器 aspx 强制 Javascript      更新时间:2023-09-26

在子弹出窗口中,我有以下按钮。

<asp:Button Style="width: 100%;" ID="Button2" runat="server" OnClientClick="RefreshParent()"
 OnClick="Button1_Click" Text="Select Study" />

OnClick功能允许用户选择一项改变整个网站内容的研究,这部分工作正常,因此没有列出。

OnClientClick函数应该刷新父页面,但不会导致客户端数据更新,除非我手动刷新页面(F5)。这是RefreshParent代码。

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

在功能上我也尝试过:

window.opener.document.reload(true)

window.opener.document.href("home.aspx")

什么都没用。是否有一种方法会导致服务器从具有代码隐藏或javascript的子窗口回发?谢谢

您尝试过吗:

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

您可能还想在OnClientClick中返回false(这并不是关闭窗口的问题)

我认为发生的情况是,在执行弹出窗口OnClick方法之前,已经完成了父页面的重新加载。为了在回发完成后执行重新加载脚本,我建议您将脚本包装在回发后显示的占位符中:

<asp:placeholder id="refresh_script" visible="false" runat="server">
  <script type="text/javascript">
    window.opener.location.reload();
    window.close();
  </script>
</asp:placeholder>

在您的OnClick处理程序中:

refresh_script.Visible = true;

从按钮中删除OnClientClick处理程序。