JQuery Validate不适用于引导转盘内的表单
我有一个表单,其中输入字段位于引导转盘内。这些字段使用jquery验证进行验证JQuery Validate不适用于引导转盘内的表单,jquery,twitter-bootstrap,jquery-validate,carousel,bootstrap-carousel,Jquery,Twitter Bootstrap,Jquery Validate,Carousel,Bootstrap Carousel,我有一个表单,其中输入字段位于引导转盘内。这些字段使用jquery验证进行验证 <form action="#" method="post" id="carouselForm"> <div class="container"> <div id="carouselExampleControls" class="carousel slide" data-ride="carousel" data-interval="false"> <div class
<form action="#" method="post" id="carouselForm">
<div class="container">
<div id="carouselExampleControls" class="carousel slide" data-ride="carousel" data-interval="false">
<div class="carousel-inner">
<div class="carousel-item active">
Name : <input type='text' name="name"> <p>
Age : <input type='text' name="age"> <br>
</div>
<div class="carousel-item">
Street : <input type='text' name="street"> <p>
State : <input type='text' name="state"> <br>
</div>
<div class="carousel-item">
Country : <input type='text' name="country"> <p>
PIN : <input type='text' name="pin"> <br>
</div>
</div>
<a class="carousel-control-prev" href="#carouselExampleControls" role="button" style="left: -90px;" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true" ></span>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
<button type="submit" class="shadow btn btn-primary float-right " id="btnValidate">Save </button>
</div>
</form>
我该如何解决这个问题
JSFIDLE是您的问题与引导转盘有关。当必填字段不可见时,在验证过程中不考虑该字段
<form action="#" method="post" id="carouselForm">
<div class="container">
<div id="carouselExampleControls" class="carousel slide" data-ride="carousel" data-interval="false">
<div class="carousel-inner">
<div class="carousel-item active">
Name : <input type='text' name="name"> <p>
Age : <input type='text' name="age"> <br>
</div>
<div class="carousel-item">
Street : <input type='text' name="street"> <p>
State : <input type='text' name="state"> <br>
</div>
<div class="carousel-item">
Country : <input type='text' name="country"> <p>
PIN : <input type='text' name="pin"> <br>
</div>
</div>
<a class="carousel-control-prev" href="#carouselExampleControls" role="button" style="left: -90px;" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true" ></span>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
<button type="submit" class="shadow btn btn-primary float-right " id="btnValidate">Save </button>
</div>
</form>
因此,在滑动之前,您需要验证每个可见的输入字段。您还需要在保存单击中添加一个复选框,以测试是否存在不可见的必填字段:在这种情况下,您需要滑动到正确的转盘页面,让用户完成操作
document.body.style.backgroundColor='grey';
$(“#旋转木马”).validate({
规则:{
“name”:{//如另一个答案中所述,jQuery验证插件默认忽略隐藏字段。但是,您不必切换到完全不同的插件,只需通过告诉它忽略“nothing”来禁用忽略
选项即可
你的演示:真的吗?如果用户只需设置忽略选项,你的答案是切换到另一个插件?@Sparky mea culpa。谢谢
$("#carouselForm").validate({
ignore: [], // ignore NOTHING
rules : {
"name" : {
required : true,
minlength : 3
}, ....