【问题标题】:How do you reset form values in asp.net mvc?如何在 asp.net mvc 中重置表单值?
【发布时间】:2009-11-24 18:23:05
【问题描述】:

由于这个项目的疯狂(故事太长,现在无法进入),我们需要将数据保留在表单的模型中,但在成功回发时不显示在表单上,​​表单回发的地方成功 -

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

Dosent 似乎可以解决问题 - 我无法在控制器中重置模型,因为在回发时我们想要一条消息(出现在同一页面上),其中几乎可以说“谢谢您对 XYZ 的查询(这是他们在其中一个文本框中输入的内容)”

我希望这是有道理的。

【问题讨论】:

    标签: asp.net asp.net-mvc


    【解决方案1】:

    听起来像是this question 的复制品。在这里重新发布我的答案。

    听起来像是 PRG 的工作(发布 重定向获取)模式,因为你 不希望用户刷新 页面并再次提交。

    为此,我会发送一条消息或 在您的 TempData 中标记,以便您可以 检查当您重定向回 然后显示原始网址 给用户的消息。

    HTH,
    查尔斯

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        【解决方案3】:

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

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

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

        【讨论】:

          猜你喜欢
          • 2011-01-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-06-11
          • 2020-07-07
          • 1970-01-01
          • 2020-10-12
          • 1970-01-01
          相关资源
          最近更新 更多