我有两个不同的视图属于两个不同的控制器。第一个控制器的视图可以通过不显眼的验证正常工作。第二种观点没有。似乎验证插件没有运行,因为$.validator.unobtrusive
is undefined
。
在共享的 _layout 文件中,我有以下脚本标签:
<script src="@Url.Content("~/Scripts/jquery-1.7.2.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.19.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>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
那么为什么第二个视图不能与不显眼的验证一起工作呢?
更新
在这两种情况下,我都通过 Ajax 调用加载表单。我已经验证了带有损坏验证的主页可以支持对非 ajax 加载的表单进行不显眼的验证。
更新2
我终于让它工作了,但它还不是永久修复。问题的根源是同一页面上的可编辑Telerik MVC Grid。它以某种方式删除/防止$.validator.unobtrusive
在我的 ajax 负载中使用。