1

私は基本的に2つのフォームを持っています。1つは男性用、もう1つは女性用です。以下のコードは男性のフォームでは機能しますが、女性のページでも同じことを行うようにコードを変更すると機能しません。男性フォームのコードが最初の場合は機能しますが、女性フォームのコードは機能しないことがわかりました。そして、私が最初に女性のコードを置くと、それは機能しますが、男性のフォーム/コードは機能しません。したがって、機能しますが、ラジオボタンの名前を変更しても、jqtouch/jqueryは2つのグループのラジオボタンを区別できないと思います。

$("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と複数のラジオボタングループの問題の解決策も試した場合

$("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>
4

1 に答える 1

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」という名前のグループしかありません。

于 2011-12-21T10:00:44.123 に答える