2

我有一个表单,其中包含:类别文本框按钮,用于将文本框值保存在数据库中。

代码工作正常,所有文本框值都在保存按钮单击时成功保存。

问题:保存后我重定向到同一页面,现在当我点击某个链接时假设“Google.Com”,然后如果我点击后退按钮,浏览器会将我重定向到我的应用程序的上一页。在单击返回按钮时,发现回发值为 True,然后再次触发保存按钮事件,并且再次将文本框值保存在数据库中。

我不希望事件必须在点击后被触发。我应该怎么办?

请帮助我,我遇到问题但没有得到解决方案。

4

1 回答 1

3

您需要做的是在您的应用程序中实现 Post/Redirect/Get ( PRG ) 模式。基本规则是您的 POST 不应返回页面(或视图);相反,它应该只返回一个重定向请求,该请求将获取要显示的页面/视图。

虽然您会发现更多关于 ASP.NET MVC 的 PRG 信息,但我假设您使用的是 Web 表单——所以我所熟悉的示例并不多。

但这个概念非常简单。在 POST 之后,只需将 Response.Redirect 返回到您要显示的页面。这似乎是重复的工作,但您可以避免您所描述的问题。

希望这会有所帮助!

于 2013-08-24T16:21:46.200 回答