【问题标题】:Radio button selected?选择了单选按钮?
【发布时间】:2012-03-26 17:15:45
【问题描述】:

如果使用 jQuery 选择了单选按钮,我想知道特定单选按钮组。

谢谢

【问题讨论】:

    标签: jquery


    【解决方案1】:
    if( $('input[name=groupName]').is(':checked') ){
          //do something
    }
    

    或者在保罗叫醒我之前我的原始答案

      if( $('input[name=groupName]:radio:checked').length ){
          //do something
      }
    

    【讨论】:

    • $('input[name=groupName]').is(':checked') 可能是最简洁的。
    【解决方案2】:

    我认为您所要求的“不应该完成”,因为 W3 声明 having no checked radio button in a group results in undefined behavior

    如果在一组共享相同控件名称的单选按钮中没有最初为“on”的单选按钮,则选择哪个控件最初为“on”的用户代理行为是未定义的。

    由于用户代理行为不同,作者应确保在每组单选按钮中,一个最初是“打开”的。

    不过,如果您想找到选中的单选按钮,请使用:

    var checkedRadioButtons = $(':radio:checked[name=XXX]');
    

    然后检查是否勾选:

    if(!checkedRadioButtons.length) {
        alert('None checked!');
    }
    

    【讨论】:

      【解决方案3】:
      <script type="text/javascript">
      ($('input[name=groupName]').is(':checked')) ? 
          $('input[name=groupName]:checked', '#myForm').val() :
              null;
      </script>
      

      【讨论】:

        【解决方案4】:

        其他答案包括查找是否选中了组中的一个收音机,但是如果您想查找是否选中了特定按钮(不是按钮组):

        $('#myRadioButton').attr('checked')
        

        $('#myRadioButton').is(':checked')
        

        【讨论】:

        猜你喜欢
        • 2011-11-05
        • 2011-07-12
        • 2017-09-02
        • 2014-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多