获取所选单选按钮的值

时间:2012-07-19 04:21:32

标签: javascript jquery html5 radio-button

我已经在HTML格式中定义了一组单选按钮,如下所示。我的表单名称是“MyForm”。当选择女性时,我希望变量的值等于“女性”。

<fieldset data-role="controlgroup" data-type="horizontal" id="gender" name="gender">
                    <legend>Gender :</legend>
  <input type="radio" name="radio-choice-1" id="radio-choice-1" value="choice-1" checked="checked" />
                        <label for="radio-choice-1">Male</label>

 <input type="radio" name="radio-choice-1" id="radio-choice-2" value="choice-2"/>
                        <label for="radio-choice-2">Female</label>
                </fieldset>

我试过var

genderValue = $('input[name=gender]:checked', '#MyForm').val()

但这不起作用。什么是正确的方法?

3 个答案:

答案 0 :(得分:4)

您可以将值(female...)存储在输入的值属性中,根据您的标记,您可以尝试以下操作:

$('input[name="radio-choice-1"]').change(function(){
   var genderValue = $(this).next('label').text()
})

<小时/> 但我建议这个:

<fieldset data-role="controlgroup" data-type="horizontal" id="gender" name="gender">
   <legend>Gender :</legend>
   <input type="radio" name="radio-choice-1" id="radio-choice-1" value="Male" checked="checked" />
   <label for="radio-choice-1">Male</label>
   <input type="radio" name="radio-choice-1" id="radio-choice-2" value="Female"/>
   <label for="radio-choice-2">Female</label>
</fieldset>

$('input[name="radio-choice-1"]').change(function(){
   var genderValue = this.value
})

答案 1 :(得分:1)

您的问题已解决如下:

<强> HTML:

<form id="MyForm" name="MyForm" method="post">
  <fieldset>
    <legend>
      Gender
    </legend>
    <div id="panel">
      <input type="radio" name="radio-choice" id="radio-choice-1" value="choice-1" />
      <label for="radio-choice-1">
        Male
      </label>
      <input type="radio" name="radio-choice" id="radio-choice-2" value="choice-2" />
      <label for="radio-choice-2">
        Female
      </label>
    </div>
    <div id="result">
    </div>
  </fieldset>
</form>

<强> jQuery的:

$(function() {
    $('input[name="radio-choice"]').change(function() {
        var genderValue = $(this).next('label').text();
        $("#result").html("<p> You have selected " + genderValue + ".");
    })
});

我在http://codebins.com/bin/4ldqpaa

上做过垃圾箱

答案 2 :(得分:1)

这可能对某人有帮助,这是另一种检索所选单选按钮值的方法

var gender = $('input[name="radio-choice-1"]:checked').val();

此处可选择将ID设置为单选按钮。

快乐的编码!....