jQuery - 通过先前克隆的类删除元素

时间:2013-03-02 00:23:22

标签: jquery

下面是我的代码。 最后一段代码是无效的部分。

我正在使用jQuery来填充对象数组中的数据表:

// loop to populate table data
for (var i =0; i <= numItems-1; i++) {
    var newItem = '<tr id="item_' + (i+1) + '"><td>' + items[i].name +
'</td>' + '<td>$' + items[i].price + '</td>' + '<td>' + items[i].category + 
'</td>' + '<td>' + items[i].type + '</td>' + '<td>' + items[i].modelNumber +
'</td></tr>';
    $('#itemData').append(newItem);
};

然后,我告诉jQuery克隆已单击的元素,向元素添加一个类(cartItem),以便稍后如果用户单击它就可以删除它。我把它放在另一个ID为cartData的元素中 (我不确定我是否以有效的方式这样做)

for (var i=0; i<= numItems-1; i++) {
    $('#itemData #item_' + (i+1)).click(function () {
        $(this).clone().addClass('cartItem').appendTo('#cartData');
    });
};

我正在使用此代码删除元素。

$('.cartItem').click(function () {
    $(this).remove();
});

1 个答案:

答案 0 :(得分:2)

在动态元素上,您需要委托事件处理程序:

$('#cartData').on('click', '.cartItem', function () {
    $(this).remove();
});