你如何重置asp.net mvc中的表单值?

时间:2009-11-24 18:23:05

标签: asp.net asp.net-mvc

由于这个项目的疯狂(现在进入的故事太长),我们需要将数据保存在表单的模型中,但不要在成功回发的表单上显示它,其中表单回发是成功 -

<%= Html.TextBox("FullName", "", new { @class = "required", title = "Full Name is required" })%>

Dosent似乎做了这个伎俩 - 我无法在控制器中重置模型,因为在回发后我们想要一条消息(出现在同一页面上),几乎就像是“谢谢你对XYZ的查询”这是他们在其中一个文本框中输入的内容)“

我希望这是有道理的。

3 个答案:

答案 0 :(得分:3)

听起来像是this question的副本。在这里重新发表我的答案。

  

听起来像PRG的工作(Post   重定向Get)模式,因为你   不希望用户刷新   页面并让它再次提交。

     

要做到这一点,我会发一条消息或   在TempData中标记,以便您可以   当你重定向回来时检查一下   原来的网址然后显示一个   消息给用户。

HTHS,
查尔斯

答案 1 :(得分:0)

尝试不带值的Html.TextBox重载:

Html.TextBox("FullName", 
    new { @class = "required", title = "Full Name is required" })

答案 2 :(得分:0)

发布后,您应始终重定向以避免重新提交表单时出现问题。如果要显示消息,可以使用TempData。只需在重定向之前设置TempData [“ThankYouMessage”],然后,如果设置了值,则显示消息。

在这里,您可以阅读MVC 2中的TempData:

http://weblogs.asp.net/jacqueseloff/archive/2009/11/17/tempdata-improvements.aspx