-1
여러 개의 체크 박스가 있는데 그 중 하나를 점검해야합니다. "플래그"제출이 true이고 preventDefault()가 작동하면 모든 것이 처음으로 잘 실행됩니다.jQuery - 기본 설정 취소 실행 취소
그러나 "플래그"가 거짓이면 "바인딩 해제"가 작동하지 않습니다.
다른 필수 입력란을 채우지 않으면 양식을 제출해서는 안됩니다. 당신이 때어이 필요한 것처럼
<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, 함수 (e) 대신 false가 반환됩니다. –