我有一个表,我可以即时向其中添加列。每列顶部都有一个 [X]
图标,当用户单击它时,我需要删除整个列。
我创建了一个Fiddler页面向您展示我所做的事情。
正如您所看到的,我在顶部有 [X]
图标,当我单击它时,它会删除表中的第三列,因为我指定了一个固定列,即 3。但是我需要能够删除当前列而不是第三列。
如何确定当前列是什么并删除表中与正确位置匹配的每个 tr
?
最佳答案
可以尝试这样的事情:
$('.removeMe').click(function() {
var indexToRemove = $(this).index();
$(".defaultTable tbody tr").each(function() {
$(this).find("td:eq("+indexToRemove+")").remove();
});
});
编辑:
这是一个 fiddle ,可以删除它们、标题以及任何动态创建的列。它使用 jQuery 的 .on()
方法和委托(delegate)事件,这样即使是动态创建的元素也会添加此事件监听器。 .click()
是直接绑定(bind),只会将其绑定(bind)到已存在的元素,因此新创建的元素不会将事件监听器绑定(bind)到它们。
关于javascript - 如何通过单击单元格使用jquery删除列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38960942/