客户端验证不在asp.net工作mvc
问题描述:
我似乎无法获得客户端验证在asp.net mvc3应用程序中工作。在配置我客户端验证不在asp.net工作mvc
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
在我_Layout.cshtml我有
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
在我的网页我有
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
我只是玩弄使用MVC 3 EF 4我的模型类只有一个必需的字段,但客户端验证不会触发。它总是回发。有任何想法吗?
答
你在模型中使用什么进行验证?这里是一个快速简便的方法:
using System.ComponentModel.DataAnnotations;
namespace YourNs
{
public class YourModel
{
[Required]
public string SomeRequiredString { get; set; }
}
}
现在您的这个模型视图,如果有必要的脚本中引用应该有客户端验证。这一切都通过[Required]
属性。
+2
目前,我只使用EF生成的类。当它回发它确认所需的字段,这只是客户端应该开火,事实并非如此 – daustin
答
我不知道是你的情况是可行的,但我通过调用.validate()函数得到验证:
var validator = $('#formData').validate();
if ($('#formData').valid()) {
//alert('valid');
return true;
}
希望能帮助
答
确保这些appSettings
是在你的根Web.config
:
<appSettings>
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
您可以发布您期望验证的模型吗? – Jesse
验证确实发生。它只发生在服务器端。这不是在客户端发生的。 – daustin