我想要以下功能:
当用户点击任何一行时,它将被删除。
我尝试过以下操作,但是有问题。如果单击该行,它会被删除,但是当您通过单击#click
添加行时,单击该行时不会删除该行。
这是我的代码:
SCRIPT
$(document).ready(function(){
$('#click').click(function(){
$('#table').append('<tr><td> </td></tr>');
})
$('#remove').click(function(){
$('#table tr:last').remove();
})
$('#table tr').click(function(){
$(this).remove();
});
})
答案 0 :(得分:4)
click
只转发到bind
,而bind
仅绑定与创建时jQuery对象中的元素匹配的内容。您可能希望将on
与其selector
参数一起使用:
$('#table').on('click', 'tr', function() {
$(this).remove();
});
JSFiddle上的
答案 1 :(得分:1)
您应使用on(tr)
将点击处理程序绑定到每一行.on()方法将事件处理程序附加到当前选定的元素集
$('your-table').on('click','tr',function(){
$(this).remove();
});
<强> DEMO 强>
希望这有帮助
答案 2 :(得分:0)
因为您没有将事件分配给附加行。尝试添加如下行:
$('#click').click(function(){
$('#table').append('<tr><td> </td></tr>');
$('#table tr:last').click(function(){
$(this).remove();
});
})