如何从asp.net(.cs页面)中关闭的子窗口刷新父窗口。我们正在使用
page.ClientScript.RegisterStartupScript(this.GetType(), "PopupSave", "<script> JavaScript(`successfully Saved`); window.close();window.top.opener.RefreshPage();</script>");
用于从子窗口关闭刷新父页面。
此处RefreshPage()
是自定义函数
function RefreshPage() {
window.document.forms[0].submit();
}
它在IE中运行良好,但在Mozilla Firefox和Google Chrome中没有。 请帮帮我,这对我来说是非常迫切的要求。
同样,它也无法解决您的解决方案。我的项目结构与您上面解释的完全不同。我们使用page.ClientScript.RegisterStartupScript()
在代码后面调用java脚本函数。这里我们调用由分号(;
)分隔的不同java脚本函数。见下文
page.ClientScript.RegisterStartupScript(this.GetType(), "PopupSave", <script>javascript:alert('Successfully Saved'); window.close();window.top.opener.RefreshPage();</script>");
这里的RefreshPage()是用户定义的java脚本函数,即
function RefreshPage()
{
window.document.forms[0].submit();
}
它在 IE (Internet Explorer)中工作正常,但在 Mozilla Firefox 和 Google Chrome 中无效。
在 Mozilla Firefox 中,弹出值保存在数据库中,但不会更新到父页面。如果我手动刷新,则值将更新到父页面。
如果我将调试器放在 IE 中的RefreshPage()
函数中,它就会被激活但不会出现在 Firefox 中。请帮帮我。
答案 0 :(得分:3)
也许你可以使用像
这样的东西window.parent.forms[0].submit();
或者如果您不想使用提交功能,可以使用
window.parent.location.href = 'yourURL';
答案 1 :(得分:0)
也许您应该在RefreshPage()
之前将呼叫转移到window.close()
。
答案 2 :(得分:0)
window.opener.location.href = window.opener.location.href;