我有以下内容,但不起作用,我的验证似乎没有在表单提交时触发。
<script src="/Public/javascript/jquery-ui-1.8.13.min.js" type="text/javascript"></script>
<script src="/Public/javascript/jquery.unobtrusive-ajax.js" type="text/javascript"></script>
<script src="/Public/javascript/jquery.validate.min.js" type="text/javascript"></script>
......
<form action="/Controller/Action" data-ajax="true" data-ajax-complete="bla();" data-ajax-method="POST" id="MyAjaxForm" method="post">
.........
<input data-val="true" data-val-required="The x field is required." id="ViewModel_x" name="ViewModel.x" type="text" value="">
<span class="field-validation-valid" data-valmsg-for="ViewModel.x" data-valmsg-replace="true"></span>
.........
<a href="#" id="saveButton" onclick="$('#MyAjaxForm').submit();">Some button text</a>
</form>
您发现生成的标记有问题吗?
提前致谢。
最佳答案
Do you see something wrong in the generated markup?
是的,您似乎忘记包含 jquery.validate.unobtrusive.js
脚本,该脚本解释输入字段上的 HTML5 data-*
验证属性并发出 jquery.validate
规则:
<script src="/Public/javascript/jquery-ui-1.8.13.min.js" type="text/javascript"></script>
<script src="/Public/javascript/jquery.unobtrusive-ajax.js" type="text/javascript"></script>
<script src="/Public/javascript/jquery.validate.min.js" type="text/javascript"></script>
<script src="/Public/javascript/jquery.validate.unobtrusive.js" type="text/javascript"></script>
关于asp.net-mvc-3 - ASP.NET MVC 3 不引人注目的验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9841383/