0

さまざまな食事のラジオボタンのグループがあり、グループごとに異なる名前を付けたいと思っています。

ここに私が持っているものの画像があります。

ここに画像の説明を入力

メインディッシュ、ジャケットポテト、サラダのいずれかのみを選択できます。

彼らがメインを選択しようとすると、気が変わってサラダを選択し、メインの食事の選択を解除する必要があります。

ラジオ ボタンには次のようなラベルが付けられます。

グループ 1:lunch_main グループ 2:lunch_jacketpotato グループ 3:lunch_salad

とにかくこれを行うことはありますか?

4

2 に答える 2

3

これは、ラジオボタンが機能することを意図したものではありません。異なる名前を付けるのではなく、異なるdata-*属性を付けます。共通nameの属性は無線機能を保持しますが、カスタム属性はdata-*JS なしで探しているものを提供します!

data次のようなカスタム属性を使用できます。

<input type='radio' name='lunch' data-mealType='lunch' />
<input type='radio' name='lunch' data-mealWhatever='cool' />
于 2013-10-29T13:46:52.927 に答える
1

これはあなたが提案した質問に対する私の解決策です:

$("input:radio").change(function(){
        var currentGroupName = $(this).prop("name");        
        $("input:radio").not(this).prop('checked', false);
    });

クリックしたアイテムを除外することに依存し、そこにあるすべてのラジオ ボタンを選択し、現在のグループ名を除外して、「checked」属性を削除します。そこにある最高のコードではありませんが、あなたの質問に正確に一致します。

私はあなたのためにライブサンプルを作りました。ここにフィドルがあります: http://jsfiddle.net/EhHpy/

更新:これは、ロジックがターゲット グループに対してのみ機能し、他のグループをエスケープするための新しいフィドルです (私の例のように飲み物をリンクします): http://jsfiddle.net/EhHpy/1/

于 2013-10-29T13:58:33.770 に答える