JqTouch / Jquery不会识别两组不同的单选按钮

时间:2011-12-21 09:57:30

标签: jquery radio-button jqtouch radio-group

我基本上有两种形式,一种是男性,另一种是女性。 下面的代码适用于男性表单,但是当我修改我的代码为女性页面执行相同的操作时,它不起作用。我发现,如果男性形式的代码是第一个,它将起作用,但不适用于女性形式。如果我把女性代码放在第一位就可以了,但是男性形式/代码不会起作用。所以它可以工作,但我认为即使我更改了单选按钮的名称,jqtouch / jquery也无法区分这两组单选按钮。

$("input[name=AxMale]:radio").click(function() {
    var x;
    x = parseFloat($("#MalePred").val())
    if ($(this).val() == '0') {
        parseFloat($('#prePredMale').val(x));
    }
    else if ($(this).val() == '1') {
        parseFloat($('#postPredMale').val(x));
    }
    else if ($(this).val() == '2') {
        parseFloat($('#MalePred').val(''));
        parseFloat($('#cmMale').val(''));
        parseFloat($('#kgMale').val(''));
        parseFloat($('#ageMale').val(''));
        $(this).attr('checked', false);

    }

});
return false;

这是html

<li><input type="radio" name="AxMale" value="0" title="Initial Assessment" /></li>
 <li><input type="radio" name="AxMale" value="1" title="Exit Assessment" /></li>
<li><input type="radio" name="AxMale" value="2" title="Do Another Calculation" /></li>

如果还尝试了此链接上的解决方案JQuery and multiple radio button groups problem

$("input:radio").click(function() {
  if (this.name == "group_1") {
    // group 1 clicked
  } else if (this.name == "group_2") {
    // group 2 clicked
  }
});

但没有成功,任何帮助都会很棒。


更具体一点:

当我有女性形式的代码时......

$("input[name=AxFemale]:radio").click(function() {
    var x;
    x = parseFloat($("#FemalePred").val())
if($(this).val() == '0') 
{
parseFloat($('#prePredFemale').val(x));
}
else if($(this).val() == '1')
{
parseFloat($('#postPredFemale').val(x));
}
else if($(this).val() == '2')
{
parseFloat($('#FemalePred').val(''));
parseFloat($('#cmFemale').val(''));
parseFloat($('#kgFemale').val(''));
parseFloat($('#ageFemale').val(''));
$(this).attr('checked', false);

}

});
return false;

这有效......但只有当它放在男性代码之前。

所以在相同的html上(因为我使用的是jqtouch)我有一组名为AxFemale的单选按钮

<li><input type="radio" name="AxFemale" value="0" title="Initial Assessment" /></li>
 <li><input type="radio" name="AxFemale" value="1" title="Exit Assessment" /></li>
 <li><input type="radio" name="AxFemale" value="2" title="Do Another Calculation" /></li>

1 个答案:

答案 0 :(得分:0)

尝试

$("input:radio").click(function() {
  if ($(this).attr('name') == "group_1") {
    // group 1 clicked
  } else if ($(this).attr('name') == "group_2") {
    // group 2 clicked
  }
});

<强>更新

同样注意:在HTML示例中,只有一个名为“AxMale”的组