是否有可能通过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. ASP.NET MVC 3 ModelState
- 3. Angularjs和Asp.net MVC - 角desn't得到输入型隐藏
- 4. 当ModelState在asp.net中添加验证错误?
- 5. jQuery的 - 通过输入字段隐藏输入值
- 6. MVC 2 ModelState - 显示所有错误
- 7. 如何输入数据添加到隐藏输入字段
- 8. jQuery.validate和隐藏输入
- 9. 进入后隐藏输入文本,输入后隐藏密码
- 10. asp.net mvc textboxfor隐藏密码输入的文本
- 11. ASP.NET MVC(和MvcContrib)的隐藏功能
- 12. ASP.NET MVC和跟踪输出错误
- 13. 通过asp.net隐藏网址中的参数mvc routing
- 14. MVC如何隐藏通过ViewData的
- 15. ASP.NET MVC:如何将嵌套属性添加到Modelstate?
- 16. 如何添加一个代码隐藏到asp.net mvc视图?
- 17. ASP.NET隐藏输入密码的长度
- 18. Asp.net MVC可见/隐藏
- 19. 在asp.net中隐藏url MVC
- 20. ASP.NET mvc隐藏webgrid列
- 21. asp.net mvc jquery隐藏字段
- 22. ASP.NET MVC - partialview - 代码隐藏?
- 23. 显示的ModelState错误与AngularJS在ASP.NET MVC
- 24. ASP.NET MVC ModelState在视图模型中IEnumeration <SelectListItem>有错误
- 25. asp.net mvc ModelState IsValid - 有效地处理返回错误
- 26. 添加代码隐藏从C#Asp.net
- 27. ASP.Net MVC HttpRequestValidationException - 捕获错误和捕获输入?
- 28. 添加HTML输入动态jQuery和asp.net
- 29. jquery通过输入并添加他们
- 30. 隐藏通过loadComponent
是的,这是它通过设计工作的方式。如果它不适用于您,请确保您使用的属性名称实际上与在页面上呈现的模型属性匹配,并且您已将验证消息包含在视图中(尽管如此,客户端也应该这样做) )。 – tvanfosson 2012-03-29 12:40:35