我有一个aspx页面会弹出一个新窗口来编辑一些信息。当用户完成编辑后,他们点击保存,在保存事件结束时,我有这个C#代码:
Context.Response.Write("<script type='text/javascript'>window.parent.location.reload(true);window.frameElement.commitPopup();</script>");
Context.Response.Flush();
Context.Response.End();
这样父页面就会刷新并显示更新的信息。我的问题是,如果我在上一页上做了一些导致回发的其他操作,上面的代码将尝试重做该回发(例如尝试删除项目)。
有没有什么方法可以在父页面上更新我的信息而无需重做上一次回发?
答案 0 :(得分:1)
为什么不加载带有随机参数的同一页面来强制加载,而不是重新加载制作和回发
window.parent.location.href = window.parent.location.href + '?rnd=' + Math.random();
现在,如果您的href已准备好其他参数,您可以添加&amp; rnd 。
如果您进行多次重新加载,可以像这样替换rnd:
window.parent.location.href = window.parent.location.href.replace(/\?rnd.*$/, '?rnd' + Math.random());
你也可以
window.parent.location.replace(window.parent.location.href.replace(/\?rnd.*$/, '?rnd' + Math.random()));