jquery - jquery 验证复选框
问题描述
我有一个如下表单,而不是按下提交按钮和消息表单成功提交,消息不再显示,用户转到另一个 url。就像批准网站的第一条规则一样
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.2/jquery.validate.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.2/additional-methods.min.js"></script>
$(document).ready(function() {
$.validator.setDefaults({
submitHandler: function() {
alert("Form successful submitted!");
}
});
$('#quickForm').validate({
rules: {
terms: {
required: true
},
},
messages: {
terms: " please tick cheakbax"
},
errorElement: 'span',
errorPlacement: function(error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function(element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function(element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
});
<form role="form" id="quickForm" action="http://google.ca">
<div class="card-body">
<div class="form-group mb-0">
<div class="custom-control custom-checkbox">
<input type="checkbox" name="terms" class="custom-control-input" id="exampleCheck1">
<label class="custom-control-label" for="exampleCheck1"></label> ok! thanks.</div>
</div>
</div>
<div>
<center><button type="submit" class="btn btn-success">open website</button></center>
</div>
</form>
解决方案
$(document).ready(function() {
$.validator.setDefaults({
submitHandler: function() {
alert("Form successful submitted!");
}
});
$('#quickForm').validate({
rules: {
terms: {
required: true
},
},
messages: {
terms: " please tick cheakbax"
},
errorElement: 'span',
errorPlacement: function(error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function(element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function(element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.2/jquery.validate.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.2/additional-methods.min.js"></script>
<form role="form" id="quickForm" action="http://google.ca">
<div class="card-body">
<div class="form-group mb-0">
<div class="custom-control custom-checkbox">
<input type="checkbox" name="terms" class="custom-control-input" id="exampleCheck1">
<label class="custom-control-label" for="exampleCheck1"></label> ok! thanks.</div>
</div>
</div>
<div>
<center><button type="submit" class="btn btn-success">open website</button></center>
</div>
</form>
推荐阅读
- python - Groupby 和展平列表
- python - 实时流式传输来自 Pi 的视频帧
- google-cloud-platform - Google Cloud Memory Store (Redis) 使用情况
- java - 在 Java 中将数组声明为全局变量
- python - 在列中重复特定范围值并显示在数据框中
- javascript - 如何让绘图线在 Internet Explorer 中工作?
- node.js - 如何允许谷歌应用引擎节点 js 脚本调用跨域?
- matlab - 将 simulink 和 m-script 与断言块和回调结合使用
- jquery - 使用 querySelector jquery 更改源不起作用
- laravel - 发布路线不起作用并且在 laravel 中没有返回错误