-1
我有多个复选框,其中一个必须检查。 单击提交“标志”为true并且preventDefault()工作时,所有内容都第一次正常运行。jQuery - 撤消防止默认
但是“解除绑定”在“flag”为false时不起作用。
此外,如果其他必填字段未填写,则不应提交表单。
<form action="submit/submitPref.php" method="post" onSubmit="return myvalidate()">
<div class="section mt">
<p class="my_comp">My Compensation Package can be</p>
<div class="clearfix"> </div>
</div>
<div class="clearfix"> </div>
<div class="section pre_btm compn">
<div class="col-xs-6 pr-none half pl0 mrgrht">
<p>Salary Only per Year</p>
<input name="salOnlyPY" type="checkbox" class="chk txtrht" value="1">
</div>
<div class="col-xs-6 pr-none half pl0 mrgrht">
<p>Salary Only per Hour</p>
<input name="salOnlyPH" type="checkbox" class="chk txtrht" value="1">
</div>
<div class="col-xs-6 pr-none half pl0 mrgrht">
<p>Salary with Bonus</p>
<input name="salWithBonus" type="checkbox" class="chk txtrht" value="1" />
</div>
<div class="col-xs-6 pr-none half pl0 mrgrht">
<p>Commission Only</p>
<input name="commOnly" type="checkbox" class="chk txtrht" value="1">
</div>
<div class="col-xs-6 pr-none half pl0 mrgrht">
<p>Salary & Commission</p>
<input name="salNcomm" type="checkbox" class="chk txtrht" value="1">
</div>
<div class="clearfix"> </div>
</div>
<!--THE FORM ALSO HAS OTHER MANDATORY FIELDS-->
</form>
$(document).ready(function(){ function myvalidate() { flag=true; $('.txtrht:checked').each(function(){ flag=false; }); if(flag){ $('.my_comp').addClass('required'); $("form").submit(function(e){ e.preventDefault(); }); } else { if($('.my_comp').hasClass('required')) { $('.my_comp').removeClass('required'); } $("form").submit(function(e){ e.preventDefault(); $(this).unbind('submit').submit(); }); } } });
从哪里调用此函数'myvalidate'?你是否也可以提供html部分 –
@Aman Rawat,返回false不起作用,代替函数(e)。 –