【问题标题】:Selecting values of two radio buttons jQuery选择两个单选按钮jQuery的值
【发布时间】:2011-11-04 12:25:50
【问题描述】:

我有以下 HTML:

<div class="row1">
    <input type="radio" name="group1" value="0" checked="checked"/>Zero
    <input type="radio" name="group1" value="1" />One
</div>

<div class="row2">
    <input type="radio" name="group2" value="0" checked="checked" />Zero
    <input type="radio" name="group2" value="1" />One
</div>

连同以下 jQuery 代码:

$(document).ready(function() {
    var val1 = "";
    var val2 = "";

    $('input[name="group1"],input[name="group2"]').change(function() {
        val1 = $('input[name="group1"]').val();
        val2 = $('input[name="group2"]').val();
        alert(val1 + " : " + val2);
    });

});

现在,我的预期结果是,当其中一个单选按钮发生更改时,它会获取两个单选按钮的选定值并将它们显示在警报框中。

正如您在此处使用我的 jsFiddle 所看到的:http://jsfiddle.net/2whkp/ 结果始终为 0:0。我有一种感觉,这可能是因为它总是以该名称获得第一个单选按钮。但是,如果是这种情况,我将如何解决这个问题?

提前致谢,

戴夫

【问题讨论】:

    标签: jquery radio-button selectedvalue


    【解决方案1】:

    将 :checked 过滤器添加到您的选择器中,它将起作用。例如

    val1 = $('input[name="group1"]:checked').val();
    val2 = $('input[name="group2"]:checked').val();
    

    【讨论】:

      【解决方案2】:
      $(document).ready(function() {
          var val1 = "";
          var val2 = "";
      
          $('input:radio').change(function() {
              val1 = $('input:radio[name="group1"]:checked').val();
              val2 = $('input:radio[name="group2"]:checked').val();
              alert(val1 + " : " + val2);
          });
      
      });
      

      【讨论】:

        【解决方案3】:

        是的,你是对的,这就是组中第一个输入的值。只需使用$('input[name="group1"]:checked') 而不是$('input[name="group1"]')

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-08-11
          • 2018-10-27
          • 2011-08-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-31
          相关资源
          最近更新 更多