如何检查单选按钮是否使用jquery进行检查

问题描述:

我有一个名为attendance的单选按钮,如果未选择“是”或“否”,我如何创建错误。目前用户可以提交表单,如果任何一个按钮没有被选中,我不想要。如何检查单选按钮是否使用jquery进行检查

<script src="jquery.js"></script> 
    <script>  
    $(function(){  
      function validate(id){  
       var enabled = ($("input[name='attendance" + id + "']:checked").val() == 'Yes');   
       if(enabled){    
        //Please select option is selected    
        if($("#colour" + id)[0].selectedIndex == 0){     
        alert('Please make your colourselection');     
        return false;    
        }    
        //Please select option is selected    
        if($("#shade" + id)[0].selectedIndex == 0){     
         alert('Please select your shade');     
         return false;  

        } 
       }  
       return true;  
      }; 

      $("input[name^='attendance']").click(function() { 

       var id = this.name.replace('attendance', '');  
       $("#colour" + id + ", #sahde" + id).prop("disabled", this.value == 'No');   
       validate(id);  
      });  
      $("input:submit").click(function(){   
       var retVal = true; 
       $.each([1, 2, 3, 4], function(i, val){ 
        retVal = (validate(val) && retVal); 
       }); 
       return retVal; 
      }); 
     }); 
    $(document).ready(function(){    
            $("input[name=attendance1]:checked").triggerHandler('click'); 

     });  

}); 
    if (!($("input[name='attendance1']:checked").val())) { 
    alert('Nothing is checked!'); 
    return false; 
    }); 
    </script> 
+0

我想你可能想看看jquery验证插件http://docs.jquery.com/Plugins/Validation它可以让你指定一个字段,如果没有大量的代码 – 2012-02-28 00:52:40

if ($("input[name='attendance1']:checked").val()) { 
     alert('Nothing is checked!'); 
     return false; 

你缺少一个(以后如果和$声明(“输入[名称=‘attendance1’]:勾选”)VAL()是当有一个选中的值,这意味着真实,触发警报。

你可能要改变如何与

if (!($("input[name='attendance1']:checked").val())) { 
     alert('Nothing is checked!'); 
     return false; 

所以现在如果还有什么选择工作

,警报会触发

+0

谢谢你可以检查我编辑后,我试过了,它仍然没有工作。 – lukus 2012-02-28 01:01:39

+0

if语句不应该在提交函数之外,在那里我看不到任何代码,你可能想看看这个http://api.jquery.com/submit/,花些时间阅读它并改变它你的代码相应地或者你可以看看插件,像格伦斯拉文 – XepterX 2012-02-28 01:24:03

+0

建议的是我的提交功能不是$(“input:submit”)。click(function(){? – lukus 2012-02-28 01:38:44

我想你只需要检查是否复选框被选中与否,所以没有必要为这个校验值只是使用

if ($("input[name='attendance1'].is(":checked")) { 
    #your code 
} 

希望这有助于..........