我正在使用asp.net mvc 3进行项目,并且已经在几个页面上使用了服务器和客户端验证。它工作正常。但这一次,我有一个特例:
视图中的项目与模型以及某些属性绑定。
一个例子:
public class MyModelView{
[Required]
[StringLength(100, MinimumLength = 2)]
public String Name{get;set;}
public DetailsObject Details{get;set;}
}
public class DetailsObject{
[Required]
[StringLength(100, MinimumLength = 2)]
public String PropertyOne{get;set;}
[Required]
[StringLength(100, MinimumLength = 2)]
public String PropertyTwo{get;set;}
}
并且在视图中我“绑定了所有元素
@Html.TextBoxFor(m=>m.Name)
@Html.TextBoxFor(m=>m.Details.PropertyOne)
@Html.TextBoxFor(m=>m.Details.PropertyTwo)
问题是我没有得到任何客户端验证。服务器验证仍适用于所有属性。
我的jquery验证不引人注意。你是如何管理的?
答案 0 :(得分:1)
您应该检查几个地方
web.config应该有那些行
<appSettings>
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>
检查javascripts是否按顺序包含
<script src="/Scripts/jquery-latest.min.js" type="text/javascript"></script>
<script src="/Scripts/jquery.validate.min.js" type="text/javascript"></script>
<script src="/Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.min.js" type="text/javascript"></script>
还提醒(因为我没有看到整个视图文件)放置ValidationMessageFor
帮助程序以查看验证错误