1

以下の機能が欲しいです。

ユーザーが任意の行をクリックすると、その行は削除されます。

以下を試してみましたが、問題があります。行をクリックすると削除されますが、 をクリックして行を追加すると#click、行をクリックしても削除されません。

これが私のコードです:

脚本

$(document).ready(function(){
$('#click').click(function(){
    $('#table').append('<tr><td>&nbsp;</td></tr>');
})
$('#remove').click(function(){
    $('#table tr:last').remove();
})
$('#table tr').click(function(){

$(this).remove();

});
})
4

3 に答える 3

4

clickに転送するだけで、作成時にbindjQuery オブジェクト内の要素と一致するものにbindのみバインドします。おそらくそのパラメータで使用したいでしょう:onselector

$('#table').on('click', 'tr', function() {
    $(this).remove();
});

JSFiddleで試してみてください。

于 2012-05-19T06:16:45.893 に答える
1

on (tr)を使用して、各行にクリック ハンドラーをバインドする必要があります。

.on() メソッドは、現在選択されている要素のセットにイベント ハンドラーをアタッチします。

$('your-table').on('click','tr',function(){
   $(this).remove();        
});

デモ

お役に立てれば

于 2012-05-19T06:17:20.723 に答える
0

追加された行にイベントを割り当てていないためです。次のように行を追加してみてください。

$('#click').click(function(){
    $('#table').append('<tr><td>&nbsp;</td></tr>');
    $('#table tr:last').click(function(){
        $(this).remove();
    });
}) 
于 2012-05-19T06:17:49.437 に答える