Webforms刷新问题
这可能是每个WebForms开发人员的一个简单问题,但我知道这个场景。 我有一个页面上有一个“ADD”按钮,它会生成一个jquery弹出窗口,用户可以在其中提交一个表单,该表单将向页面上的转发器添加一个条目。 我的问题是,在用户添加项目后,如果他们点击刷新按钮,则该项目将再次添加。 我无法使用page.ispostback来阻止这一点,因为这会阻止原始添加。 我能在这做什么?
这是一个常见的问题。 这是问题的解释和解决方案。
当通过HTTP POST请求将Web表单提交给服务器时,尝试刷新某些用户代理中的服务器响应的Web用户可能会导致重新提交原始HTTP POST请求的内容,从而可能导致意外结果,例如重复的网络购买。 为避免此问题,许多Web开发人员使用PRG(Post / Redirect / Get)模式。
从wiki复制( LINK )
最简单的解决方案可以是Response.Redirect到同一页面(即如果你的页面名为default.aspx
写入Response.Redirect("default.aspx")
)。 如果你这样做,浏览器刷新按钮将只加载页面,就好像你已输入地址栏URL并导航到它。
这是问题如何阻止可能有用的不需要的回发 。
如果有一个选项可以删除页面上的项目(是吗?),你真的要关注这件事吗? 可能想要考虑一下。 只是一个想法。
- 如何删除ListBoxItem周围的小填充?
- Fiddler – ReadResponse失败:服务器未返回此请求的响应
- 为什么volatile和MemoryBarrier不会阻止操作重新排序?
- c#LINQ:如何检索单个结果
- 如何获得两个范围的重叠范围
- 无法加载文件或程序集’Newtonsoft.Json,Version = 9.0.0.0,Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed’或其中一个依赖项
- 创建使用.NET 4.0的应用程序池
- 如何在自定义XML序列化方法中使用默认XML序列化
- 在C#中复制T-SQL DecryptByPassPhrase