我正在尝试使用jquery验证,我收到以下错误:
Uncaught TypeError: form.validate is not a function
这是我加载网站时我的脚本被引用的顺序,因为首先要假设的是我可能在jquery-validation之后加载jquery(但我不是):
<head>
<script src="/lib/jquery/dist/jquery.js"></script>
<script src="/lib/kendo-ui/js/kendo.all.min.js"></script>
<script src="/lib/kendo-ui/js/kendo.aspnetmvc.min.js"></script>
</head>
<!-- BOTTOM OF PAGE -->
<script src="/lib/bootstrap/dist/js/bootstrap.js"></script>
<script src="/lib/jquery-steps/build/jquery.steps.js"></script>
<script src="/js/site.js?v=EWaMeWsJBYWmL2g_KkgXZQ5nPe-a3Ichp0LEgzXczKo"></script>
<script src="/lib/jquery-validation/dist/jquery.validate.min.js"></script>
<script src="/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js"></script>
表单在html中声明如下:
<form id="example-form" action="/MyController/Wizard" method="post">
</form>
此外,这是我的JavaScript代码:
var form = $("#example-form");
form.validate({
errorPlacement: function errorPlacement(error, element) { element.before(error); },
rules: {
confirm: {
equalTo: "#password"
}
}
});
form.children("div").steps({
headerTag: "h3",
bodyTag: "section",
transitionEffect: "slideLeft",
onStepChanging: function (event, currentIndex, newIndex) {
form.validate().settings.ignore = ":disabled,:hidden";
return form.valid();
},
onFinishing: function (event, currentIndex) {
form.validate().settings.ignore = ":disabled";
return form.valid();
},
onFinished: function (event, currentIndex) {
alert("Submitted!");
}
});