asp.net - 如何禁用浏览器回发警告对话框

标签 asp.net javascript internet-explorer-7

我有一个专门在 IE7(内部网站)上运行的 asp.net 应用程序。

当用户需要输入数据时,我会弹出一个带有表单的子窗口。当表单关闭时,它调用 javascript:window.opener.location.reload(true) 以便新数据显示在主页上。

问题是浏览器提示它必须重新发布页面。有什么办法可以关闭此功能?

最佳答案

没有,但有一个解决方案。在某人将数据发布到页面后立即使用 302 重定向通常被认为是好的设计。这可以防止弹出窗口出现。请允许我详细说明。

1) 用户通过POST方式填写表单并提交数据。

2) 后端接收数据并对其进行操作。

3) 后端不会将内容返回给用户,而是在处理完页面后立即发出 302 重定向(如果需要,可能会将用户重定向回完全相同的 url)

4) 用户将看到的页面是您告诉他们的浏览器重定向到的页面。他们将使用标准 GET 请求加载重定向页面。如果他们尝试刷新页面,则不会重新发布数据。问题解决了。

关于asp.net - 如何禁用浏览器回发警告对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/93708/

相关文章:

c# - 使用 asp.net 和 C# 集成 Paypal

javascript - IE7 jquery 选择器返回 "Failed"

javascript - 为什么 this.selectedIndex 在 IE7 上不能用于 <select> 标签?

javascript - 在 Django 上通过 Javascript 发送 POST 请求 - 检索数据失败

javascript - 我有一个菜单和子菜单,但我无法访问子菜单,但我想访问相应菜单的子菜单

html - ie7 中不使用 padding

asp.net - 如何将存储在数据库中的规则以 vb.net 代码的形式转换?

c# - asp.net c# 代码在 Firefox 上无法正常工作,在其他浏览器上工作正常

c# - ASP.NET MVC : Razor <tr> do not match close tag

javascript - 主干集合 - fetch(),成功回调不工作