是否有可能通过ModelState.AddModelError(inputId)为输入添加一个错误,以在UI上产生错误突出显示并使其必须像客户端验证一样行为,即当用户在输入错误类中更改时将被删除。asp.net mvc通过ModelState输入添加和隐藏错误
0
A
回答
2
型号:
public class MyViewModel
{
[Required]
public string Foo { get; set; }
}
控制器:
public class HomeController : Controller
{
public ActionResult Index()
{
ModelState.AddModelError("foo", "Foo is required");
return View(new MyViewModel());
}
}
查看:
@model MyViewModel
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
@using (Html.BeginForm())
{
@Html.EditorFor(x => x.Foo)
@Html.ValidationMessageFor(x => x.Foo)
<button type="submit">OK</button>
}
现在,当呈现页面时,富域将红色突出显示一个错误,当用户在字段中键入内容并模糊,错误将被删除。
+0
我需要它来动态生成输入。我没有适合使用属性的模型。 – drunkcamel 2012-03-29 12:41:50
+0
@drunkcamel,客户端验证依赖于数据注释属性。如果您没有合适的属性,您将不得不编写自定义属性并实现“IClientValidatable”接口以指示需要应用的确切的客户端验证规则。如果有自定义验证规则,您还必须编写自定义客户端适配器并使用JavaScript函数转置所有自定义逻辑。 – 2012-03-29 12:48:36
相关问题
- 1. ASP.NET MVC用超链接添加ModelState错误
- 2. 通过CSS隐藏输入和标签
- 3. 向ModelState添加错误
- 4. ASP.NET MVC:不显示ModelState错误消息
- 5. ASP.NET MVC 3 ModelState
- 6. ASP.NET - 隐藏BoundField输入
- 7. Angularjs和Asp.net MVC - 角desn't得到输入型隐藏
- 8. JQuery - 为隐藏的输入添加值
- 9. 动态添加隐藏输入与jquery
- 10. MVC ModelState错误地报告错误
- 11. 当ModelState在asp.net中添加验证错误?
- 12. MVC 2 ModelState - 显示所有错误
- 13. jQuery的 - 通过输入字段隐藏输入值
- 14. 如何输入数据添加到隐藏输入字段
- 15. Asp.net MVC 3加密隐藏值
- 16. ASP.NET MVC通过Ajax错误记录
- 17. jQuery.validate和隐藏输入
- 18. JavaScript和隐藏输入
- 19. 进入后隐藏输入文本,输入后隐藏密码
- 20. 如何验证隐藏在ASP.NET MVC中的输入4
- 21. ASP.NET MVC - 分配变量到输入隐藏字段
- 22. asp.net mvc textboxfor隐藏密码输入的文本
- 23. asp.net mvc:将javascript浮点数转换为隐藏输入
- 24. ASP.NET MVC中隐藏输入的客户端验证
- 25. 毫秒被ASP.NET MVC隐藏输入元素截断
- 26. 动态添加值和id到一个输入类型隐藏
- 27. ASP.NET MVC:力的ModelState和不同的ErrorMessage
- 28. ASP.NET MVC和跟踪输出错误
- 29. 通过asp.net隐藏网址中的参数mvc routing
- 30. 如何通过MPMovieplayerViewController添加标题和隐藏自来水
是的,这是它通过设计工作的方式。如果它不适用于您,请确保您使用的属性名称实际上与在页面上呈现的模型属性匹配,并且您已将验证消息包含在视图中(尽管如此,客户端也应该这样做) )。 – tvanfosson 2012-03-29 12:40:35