2016-03-01 148 views
0

我已经跑过了文档,无法弄清楚我哪里出错了。 jQuery验证不会工作。在Chrome开发工具中,我没有任何错误或任何错误,所以我不确定我做错了什么。为什么不会jQuery验证工作?

我的看法如下格式:

@using (Html.BeginForm(null, null, FormMethod.Post, new { id = "eventForm" })) { 
    @Html.ValidationSummary(true, "", new { @class = "text-danger" }) 
     <div class="form-group"> 
      @Html.LabelFor(model => model.EventName, htmlAttributes: new { @class = "control-label col-md-2" }) 
      <div class="col-md-10"> 
       @Html.EditorFor(model => model.EventName, new { htmlAttributes = new { @class = "form-control", name="eventName", id="eventName" } }) 
       @Html.ValidationMessageFor(model => model.EventName, "", new { @class = "text-danger" }) 
      </div> 
     </div> 
} 

<script src="~/scripts/jquery-1.10.2.min.js"></script> 
<script src="~/scripts/jquery.datetimepicker.full.min.js"></script> 
<script src="~/Scripts/jquery.validate.min.js"></script> 
<script type="text/javascript"> 

    $('#eventForm').validate({ 
     rules: { 
      eventName: { 
       required: true 
      } 
     }, 
     messages: { 
      eventName: "Event name is required" 
     } 
    }); 
</script> 

我,我想验证的视图中添加nameid我所有的元素。 我哪里可能会出错?我没有错误或类似的东西,所以我不完全确定?我是否需要包含另一个<script>

+0

_I添加姓名和身份证到我所有的视图中的元素,我想validated_的HtmlHelpers已经做!为什么你不只是将'[Required]'属性添加到属性中,并使用'jquery.validate,unobtrusive.js',所有这些都是开箱即用的。 –

+0

@StephenMuecke我正在尝试使用jQuery Validation,所以我不一定希望以简单的方式添加属性并将其退出。感谢有关HtmlHelpers的信息。 – maxshuty

回答

2

你有可能引发如在页面加载的东西......像这样......

$(document).ready(function(){ 
    $('#eventForm').validate({ 
     rules: { 
      eventName: { 
       required: true 
      } 
     }, 
     messages: { 
      eventName: "Event name is required" 
     } 
    }); 
}); 
+0

我忘了补充 - 我昨天试过,但仍然无法正常工作。然而,它使我走上了另一条路。现在我的错误是:'Uncaught TypeError:$(...)。validate不是一个函数'引用这个:'$('#eventForm')。validate({'我想我现在可以使用它了谢谢 – maxshuty

+0

我看到你在“〜/ scripts/jquery.datetimepicker.full.min.js”提供脚本,但在“〜/ Scripts/jquery.validate.min.js”验证器中提供了脚本。所以这里是大写字母“S”,也许这导致没有发现问题,因为它似乎validate.js没有加载此错误。 – tanaydin

+0

良好的捕获 - 我改变了大写在那里,仍然得到相同的错误,这是没有道理的,因为我我先加载jQuery,然后*然后验证... hmmm – maxshuty