[英]How to clear fields after post back in asp.net mvc?
我想知道如何在asp.net mvc中回发后清除字段? 就像现在当发生验证错误时,字段保持填充用户输入的任何内容。 这很好,但是当没有发生验证错误时,我希望清除所有字段并显示一条消息。
所以现在我通过使用ViewData显示成功,但不知道如何清除字段。
尝试这个:
if(ModelState.IsValid)
{
ModelState.Clear();
}
return View();
菲尔哈克说:
试着打电话
ModelState["value1"].Value = new
ValueProviderResult(null,
string.Empty,
CultureInfo.InvariantCulture);
从控制器操作中返回视图之前。
这样做是保留与键“value1”相关的所有错误,但用空值替换该值。
听起来像PRG(Post Redirect Get)模式的工作,因为您不希望用户刷新页面并再次提交。
为此,我会在您的TempData中放置一条消息或标志,以便您可以在重定向回原始URL时检查该消息或标志,然后向用户显示消息。
在视图中回发模型时,可以指定模型,新参考。
像这样的东西。
if (ModelState.IsValid)
{
//Do your stuff here.
yourModel = new Moodel();
return View(yourModel);
}
在这种情况下,所有模型字段都将为空,并且不会在表单中显示任何内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.