如何在asp.net mvc中回复后清除字段?

我想知道如何在asp.net mvc中回发后清除字段? 就像现在发生validation错误时一样,字段会保持填充用户输入的内容。 这很好,但是当没有发生validation错误时,我希望清除所有字段并显示一条消息。

所以现在我通过使用ViewData显示成功但不确定如何清除字段。

听起来像是PRG(Post Redirect Get)模式的工作,因为您不希望用户刷新页面并再次提交。

为此,我会在您的TempData中放置一条消息或标志,以便您可以在重定向回原始URL时检查该消息或标志,然后向用户显示消息。

试试这个:

if(ModelState.IsValid) { ModelState.Clear(); } return View(); 

菲尔哈克说:

试着打电话

 ModelState["value1"].Value = new ValueProviderResult(null, string.Empty, CultureInfo.InvariantCulture); 

从控制器操作中返回视图之前。

这样做是为了保持与键“value1”相关的所有错误,但用空值替换该值。

从这个SO问题

在视图中回发模型时,可以指定模型,新参考。
像这样的东西。

  if (ModelState.IsValid) { //Do your stuff here. yourModel = new Moodel(); return View(yourModel); } 

在这种情况下,所有模型字段都将为空,并且不会在表单中显示任何内容。