0

私は 2 つのグループの RAIDO ボタンを持っています。それらは異なる一意の ID を持っています。作成方法は、グループごとに 1 つだけ選択できます。ありがとう

<group>
<input type="radio" id="u1"/>1
<input type="radio" id="u2"/>2
<input type="radio" id="u3"/>3
</div >
</group>


<group>
<input type="radio" id="T1"/>4
<input type="radio" id="T2"/>5
<input type="radio" id="T3"/>6
</group>

http://jsfiddle.net/pZdWu/

私はhtmlを変更したくありません。jQueryを使用して達成したいだけです

4

3 に答える 3

4

本当に既存の HTML を使用する必要がある場合は、ラジオ入力のデフォルト関数を単純に使用するように jQuery を使用して HTML を修正することをお勧めします。

​$('group').each(
    function(i,e){
        $(e).find('input:radio').attr('name', 'group' + i);
    });​​​​​

JSフィドルのデモ

参考文献:

于 2012-10-28T20:43:37.857 に答える
1

name 属性を使用して、グループ内の各アイテムに共通の名前を付けます.....

<input type="radio" name="group1" id="u1"/>1
<input type="radio" name="group1" id="u2"/>2
<input type="radio" name="group1" id="u3"/>3
于 2012-10-28T20:37:23.740 に答える
1

jQuery を使用すると、次のようなものを使用できます。

http://jsfiddle.net/pZdWu/5/

$(document).ready(function () {
    $("input[type=radio]").click(function () {
        var $this = $(this);
        $this.siblings("input[type=radio]").prop("checked", false);
    });
});

ただし、これは、HTML 構造が指定したとおりであることを前提としています。

ラジオ ボタンにラップ HTML が含まれている場合、または何らかの方法でラジオ ボタン内にグループ化されている場合、 の使用は機能しsiblingsません。次のようなものを使用する必要がある場合があります。

http://jsfiddle.net/pZdWu/7/

$(document).ready(function () {
    $("input[type=radio]").click(function () {
        var $this = $(this);
        $this.parents("group:first").find("input[type=radio]").not($this).prop("checked", false);
    });
});

そして明らかに、「グループ」の使用を実際に使用しているものに変更します(元の質問を使用しないように編集したのを見たと思います<group>)。

于 2012-10-28T20:44:36.977 に答える