1

個々の div を開く 3 つのラジオ ボタンがあります。3 つのすべての div には、入力ボックスの横にある追加ボタンをクリックして追加できる入力ボックスがあります。

今の問題は、

入力ボックスは、それぞれのラジオ チェック済み div にのみ追加する必要がありますが、現在は 3 つの div 入力ボックスすべてに適用されています。いずれかのラジオ ボタンをオンにして、入力の横にある追加ボタンをクリックすると、いくつかの入力ボックスを追加してから、別のラジオ ボタンに移動すると、実際には正しくないはずの同じアクションも表示されます。

ここにコードとフィドルがあります

$filtr = $('.filtr');

        $filtr.on('click', '.add', function(){
            $(this).closest('.loop').clone().appendTo( $('.test') );
        });

        $filtr.on('click', '.del', function(){
           $(this).closest('.loop').remove();
        });

        $('#1lev, #2lev, #3lev').hide();

デモ

4

2 に答える 2

4

ここを見てください:http://jsfiddle.net/VMBtC/2/

私はこれを変更しました:

$filtr.on('click', '.add', function(){
    $(this).closest('.loop').clone().appendTo( $('.test') );
});

これに:

$filtr.on('click', '.add', function(){
    $(this).closest('.loop').clone().appendTo( $(this).closest('.test') );
});

それが役に立てば幸い


編集

ラジオボタンの改善: ここをチェック -> http://jsfiddle.net/VMBtC/3/

JS

$(":radio").click(function(){
     $(".test").hide();
     var show = $(this).attr("data-show");
     $("#"+show).show(300)
});

HTML

<label><input name="1 Level" type="radio" value="0" data-show="1lev" />1 Level</label>
<label><input name="1 Level" type="radio" value="1" data-show="2lev" />2 Level</label>
<label><input name="1 Level" type="radio" value="2" data-show="3lev" />3 Level</label>
于 2013-06-11T07:22:00.957 に答える
2

を使用しないと、すべての要素$(this).closest('.loop').clone().appendTo( $(this).closest('.test') );に追加することになります。 .test

于 2013-06-11T07:22:13.380 に答える