2012-11-28 110 views
1

我的模型中有很多[Required]字段。ASP.NET MVC jQuery验证:如何显示所有必填字段的一条消息

而在传统的MVC方式中,我会为每个需要的文本框添加@Html.ValidationMessageFor()

然后,如果用户没有为5个文本框输入任何内容,则会在用户界面中显示5条消息。

我的问题是:我可以告诉只是一个消息请填写必填字段在UI而不是显示的消息随处可见像姓名为必填地址需要 ...?

,我需要这是验证在客户端,无需后期的形式返回到服务器

+0

不是http://stackoverflow.com/questi的副本ons/7935568/jquery-validation-show-validation-summary-eager-validation,与Aaron的答案一致。 – DaveMorganTexas

+1

并非如此 - 这是关于使用jQuery进行客户端验证的。 –

回答

3

你可能想看看ValidationSummary - http://msdn.microsoft.com/en-us/library/system.web.mvc.html.validationextensions.validationsummary(v=vs.108).aspx - 返回在验证消息的无序列表(ul元素) ModelStateDictionary对象。您可以忽略此消息,像这样:

@Html.ValidationSummary(true, "Invalid form") 

来源https://stackoverflow.com/a/4924494/201648

+0

谢谢,但我需要它在客户端完成,没有发布到服务器。 –

+1

啊!我刚刚挂钩到我的'$(#yourFormName).submit(...'事件并在函数中使用'return false'来停止提交(http://api.jquery.com/submit/)与自定义jQuery,或者使用jQuery验证器http://docs.jquery.com/Plugins/Validation/validate。我喜欢验证一组字段的方法是创建一个控制器来处理JSON对象并从页面发送一个AJAX请求.http://www.codeproject.com/Articles/216439/Data-Validation-Using-Annotations-for-jQuery-Ajax。另请参阅http://bradwilson.typepad.com/blog/2010/10/ MVC3-不显眼,validation.html。 –

0

您可以使用@Html.ValidationSummary

@Html.ValidationSummary(true, "Please fill mandatory fields") 

如果您还希望包括属性的特定错误列表使用:

@Html.ValidationSummary(false, "Please fill mandatory fields") 
相关问题