-2

選択したラジオボタンに応じて、テキストボックスの制御、有効化/無効化のヘルプが必要です-jQueryが望ましいでしょう。

ラジオ ボタンを選択すると、関連するテキスト ボックスが有効になり、その他は無効になります。すべてのシナリオで同じこと。1 つのラジオ ボタンが事前に選択されます。

ここに私のマークアップがあります:

     <div>
            <h1>Control fields</h1>
            <div id="Div1">
                <div id="first">
                    <input type="radio" name="radio" id="radio3" checked="checked" />First</br>
        <input type="text" id="txt_one" /></br>
        <input type="text" id="txt_two" /></br>
                </div>
                <div id="second">
                    <input type="radio" name="radio" id="radio4" />Second</br>
                    <input type="text" id="three" /></br>
      <input type="text" id="txt_four" /></br>
                </div>

                <div id="third">
                    <input type="radio" name="radio" id="radio5" checked="checked" />First</br>
        <input type="text" id="txt_five" /></br>
        <input type="text" id="txt_six" /></br>
        <input type="text" id="txt_seven" /></br>
                </div>
            </div>
        </div>

ここにリンクがあります:http://jsfiddle.net/9CDcH/1/

4

2 に答える 2

1

私はあなたが探しているものを持っているかもしれないと思います。jQuery は次のとおりです。

$('.RadioExample').not('.First').siblings().prop('disabled',true);

$('.RadioExample').on('click',function(){
    $('.RadioExample')
        .siblings()
        .prop('disabled',true);

    $(this)
        .siblings()
        .prop('disabled',false);
});

これを行うには、RadioExample各ラジオとFirst最初のラジオ ボタンにクラスを追加します。これにより、ページの読み込み時に最初のラジオ ボタン (デフォルトでオン) の後に、ラジオ ボタンのすべての兄弟が無効になり、クリックするたびにすべてが再無効化され、クリックされた兄弟が有効になります。

jsFiddleも更新しました。

これを行うにはいくつかの方法があります (別の方法は、クラスを追加または削除することです) が、これが最初に頭に浮かんだ方法でした。

于 2013-04-17T22:23:41.907 に答える
1

カスタム クラスを使用する必要はありません。実際のマークアップで問題ないので、これを試してみてください。

$(document).ready(function() {
    $('input:radio').change(function() {
        $("#content").find("input:text").attr("disabled",true);
        if($(this).is(":checked")) 
            $(this).parent().find("input:text").attr("disabled",false);
    });
});

その関数は、ラジオが変更されたときに入力を更新するため、すべてが無効になり、実際のラジオがチェックされると、同じコンテナー内のすべての入力が有効になります。

jsfiddle を見てみましょう: http://jsfiddle.net/hyunkeln/9CDcH/3/

于 2013-04-17T22:27:29.453 に答える