Jquery 除非选中复选框,否则禁用提交按钮并启动警报

Jquery 除非选中复选框,否则禁用提交按钮并启动警报,jquery,forms,validation,Jquery,Forms,Validation,这里还有很多其他问题告诉您如何禁用提交,除非选中复选框。我很容易做到这一点 我遇到的问题是,当单击提交而复选框未选中时,会触发一个警报框。我想告诉用户你必须先选择一个选项!在提交之前 这是我尝试过的众多版本之一。这很简单,谢谢大家 <!DOCTYPE HTML> <html> <head> <title></title> <script src="http://ajax.googleapis.com/ajax/libs/jquer

这里还有很多其他问题告诉您如何禁用提交,除非选中复选框。我很容易做到这一点

我遇到的问题是,当单击提交而复选框未选中时,会触发一个警报框。我想告诉用户你必须先选择一个选项!在提交之前

这是我尝试过的众多版本之一。这很简单,谢谢大家

<!DOCTYPE HTML>
<html>
<head>
<title></title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js">
</script>
<script type="text/javascript">
  $(document).ready(function(){

        $("form").submit(function(e){
        if($("#terms").not(':checked')){
            e.preventDefault();
            alert('Please check the first checkbox!');
        } 
                         return true;
    }
});



});
</script>
</head>
<body>
<form method="post" action="http://google.com">
    <input type="checkbox" name="cb1" id="terms" value="a" /> A<br />

    <!-- disable our submit button by default -->
    <input type="submit" id="submitButton" value="submit"/>
</form>
</body>
</html>
这应该起作用:

 $(document).ready(function(){ 

        $("form").submit(function(e){ 
        if(!$("#terms").is(':checked')){ 
            e.preventDefault(); 
            alert('Please check the first checkbox!'); 
        }  
                         return true; 
    } 
); 

非常感谢你。关于使用return false,你能给我一些简单的解释吗?倒数第二个结束语句只需要一个}@用户1104850当然可以。如果您确实从其onclick方法返回false,则可以阻止发回服务器之前的每个Js函数。或单击的早期阶段。一旦返回false,它将不会继续运行到服务器端。请记住,一个函数只能使用一个return语句。ie:返回1;返回2;-将始终返回1。
 $(document).ready(function(){ 

        $("form").submit(function(e){ 
        if(!$("#terms").is(':checked')){ 
            e.preventDefault(); 
            alert('Please check the first checkbox!'); 
        }  
                         return true; 
    } 
);