客户端验证无法在asp.net mvc中工作

时间:2011-11-02 00:30:14

标签: asp.net asp.net-mvc-3 validation

我似乎无法在asp.net mvc3应用程序中使用客户端验证。在配置中我有

 <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>

我正在玩ev 4使用mvc 3,我的模型类只有一个字段,但是客户端验证没有触发。它总是回复。有什么想法吗?

3 个答案:

答案 0 :(得分:0)

您在模型中使用了什么进行验证?这是一种快速简便的方法:

using System.ComponentModel.DataAnnotations;

namespace YourNs
{
    public class YourModel
    {
        [Required]
        public string SomeRequiredString { get; set; }
    }
}

现在在您对此模型的视图中,如果您引用了必要的脚本,则应该进行客户端验证。这完全是[Required]属性。

答案 1 :(得分:0)

我不知道你的情况是否可行,但我通过调用.validate()函数得到验证:

  var validator = $('#formData').validate();
       if ($('#formData').valid()) {
          //alert('valid');
          return true;
  }

希望这可以提供帮助

答案 2 :(得分:0)

确保这些appSettings位于您的根Web.config

<appSettings>
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>