jquery 2.1.1上的客户端验证

时间:2014-07-07 10:09:39

标签: jquery asp.net-mvc jquery-validate unobtrusive-validation

我正在使用MVC5并且我试图让客户端验证触发而不是服务器旅行。验证工作在服务器端,但我不能让客户端使用jquery 2.1.1触发

我正在使用bundle来注册脚本。在客户端源代码中,脚本似乎被正确引用。

<script src="/Scripts/jquery-2.1.1.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>

在web.config中,我启用了clientide和unobtrusive

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

需要验证的其中一个输入似乎是从模型中获取数据注释,因此我不认为这是问题

<input class="input-validation-error form-control" data-val="true"
 data-val-number="The field UpdateValue must be a number."
 data-val-range="Please enter a number between 1 and 28"
 data-val-range-max="28" data-val-range-min="1"
 data-val-required="An update value is required" id="tbUpdateValue"
 name="UpdateValue" type="text" value="0" aria-required="true" aria-invalid="true">`

我可以让客户端触发的唯一方法是添加对旧版jQuery的引用。我在我的视图顶部添加了这个

<script src="http://ajax.microsoft.com/ajax/jQuery/jquery-1.4.2.min.js"></script>

关于我如何使用2.1.1或者做一些愚蠢的事情的任何想法?

2 个答案:

答案 0 :(得分:0)

这可能是jQuery冲突。尝试在jQuery中使用noConflict,如下所示:

var $j = jQuery.noConflict();

答案 1 :(得分:-1)

我有同样的问题。看起来jQuery validate不能与jQuery 2.1.1一起使用

也许你应该尝试

https://www.nuget.org/packages/Microsoft.jQuery.Unobtrusive.Validation/