为什么我的 jquery-steps 向导给出函数未定义错误?
Why is my jquery-steps wizard giving a function not defined error?
我绝对不是网络开发人员,所以这可能是一个非常基本的问题。
我正在尝试从网站上的 an example 复制基本表格。这是我的完整 index.html
:
<!DOCTYPE html>
<html>
<head>
<script src="jquery-3.1.0.js"></script>
<script src="jquery.steps.min.js"></script>
<script src="bootstrap.min.js"></script>
<link href="bootstrap.min.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="container" id="wizard">
<section id="basic-form">
<h2 class="page-header">Basic Form Example</h2>
<form id="example-form" action="#">
<h3>Account</h3>
<section>
<label for="userName">User name *</label>
<input id="userName" name="userName" type="text" class="required">
<label for="password">Password *</label>
<input id="password" name="password" type="text" class="required">
<label for="confirm">Confirm Password *</label>
<input id="confirm" name="confirm" type="text" class="required">
<p>(*) Mandatory</p>
</section>
<h3>Profile</h3>
<section>
<label for="name">First name *</label>
<input id="name" name="name" type="text" class="required">
<label for="surname">Last name *</label>
<input id="surname" name="surname" type="text" class="required">
<label for="email">Email *</label>
<input id="email" name="email" type="text" class="required email">
<label for="address">Address</label>
<input id="address" name="address" type="text">
<p>(*) Mandatory</p>
</section>
<h3>Finish</h3>
<section>
<input id="acceptTerms" name="acceptTerms" type="checkbox" class="required"> <label for="acceptTerms">I agree with the Terms and Conditions.</label>
</section>
</form>
</div>
</section>
<script>
var form = $("#example-form").show();
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!");
}
});
</script>
</body>
</html>
当我打开这个文件时,我得到了漂亮的 bootstrap 风格的 none 并且我得到了 form.validate({ //...
不是一个函数的错误。
我在 jquery.steps.min.js
中搜索了 validate
方法,但确实找不到。
为什么这个例子不能开箱即用?我从这个例子中遗漏了什么吗?
表单验证不是 jQuery 步骤的一部分。您需要包含“jQuery Validation Plugin”
我绝对不是网络开发人员,所以这可能是一个非常基本的问题。
我正在尝试从网站上的 an example 复制基本表格。这是我的完整 index.html
:
<!DOCTYPE html>
<html>
<head>
<script src="jquery-3.1.0.js"></script>
<script src="jquery.steps.min.js"></script>
<script src="bootstrap.min.js"></script>
<link href="bootstrap.min.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="container" id="wizard">
<section id="basic-form">
<h2 class="page-header">Basic Form Example</h2>
<form id="example-form" action="#">
<h3>Account</h3>
<section>
<label for="userName">User name *</label>
<input id="userName" name="userName" type="text" class="required">
<label for="password">Password *</label>
<input id="password" name="password" type="text" class="required">
<label for="confirm">Confirm Password *</label>
<input id="confirm" name="confirm" type="text" class="required">
<p>(*) Mandatory</p>
</section>
<h3>Profile</h3>
<section>
<label for="name">First name *</label>
<input id="name" name="name" type="text" class="required">
<label for="surname">Last name *</label>
<input id="surname" name="surname" type="text" class="required">
<label for="email">Email *</label>
<input id="email" name="email" type="text" class="required email">
<label for="address">Address</label>
<input id="address" name="address" type="text">
<p>(*) Mandatory</p>
</section>
<h3>Finish</h3>
<section>
<input id="acceptTerms" name="acceptTerms" type="checkbox" class="required"> <label for="acceptTerms">I agree with the Terms and Conditions.</label>
</section>
</form>
</div>
</section>
<script>
var form = $("#example-form").show();
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!");
}
});
</script>
</body>
</html>
当我打开这个文件时,我得到了漂亮的 bootstrap 风格的 none 并且我得到了 form.validate({ //...
不是一个函数的错误。
我在 jquery.steps.min.js
中搜索了 validate
方法,但确实找不到。
为什么这个例子不能开箱即用?我从这个例子中遗漏了什么吗?
表单验证不是 jQuery 步骤的一部分。您需要包含“jQuery Validation Plugin”