如何停止在asp.net Web表单中的referesh上重新提交页面

时间:2014-10-16 09:37:28

标签: asp.net webforms

我们如何防止在刷新时重新提交页面。

例如: 我有一个输入字段,在提交页面时,它会将该字段的值添加到列表中并自动重新加载,但如果故意刷新页面而不向字段写入任何内容,则会将先前添加的值添加到列表中。如何在webforms asp.net中防止这个问题

1 个答案:

答案 0 :(得分:0)

尝试使用<input type="button" />代替<input type="submit" />或其相应的ASP.NET控件。如果您在页面上有一个提交按钮,它将在您刷新时发布表单(无论是偶然的还是有意的)。但是你失去了使用输入按钮提交表单的能力。用户必须单击输入按钮。

您可能仍希望保留提交按钮,因此在添加到列表后,使用Response.Redirect显式重定向到URL

Response.Redirect(Request.Url.AbsoluteUri);

此外,要在服务器端完全自动防故障,您还可以在添加项目之前检查项目是否已存在于列表或数据库中(如果该项目是列表的后备存储)。