单击表格行和单元格

Table row and cell click

本文关键字:单元格 表格 单击      更新时间:2024-02-26

如何为特定于表行(tr)和表数据(td)创建点击事件。

例如,类似于这个的东西

$("table tr").on("click", function(){
      // do something with tr without td click handler
});
$("table tr td").on("click", function(){
      // do something with td without tr click handler
});

提前感谢

要将click事件绑定到td元素,使其不会激发父tr click,需要防止事件在DOM树中冒泡。您应该调用事件对象的stopPropagation方法:

$("table tr td").on("click", function(e) {
    e.stopPropagation();
    // do something with td without tr click handler
});

在没有td点击处理程序的情况下使用tr

如果您在捕获阶段绑定点击事件(阅读事件顺序),这也是可能的。为此,您需要使用HTMLElement's addEventListener方法,jQuery$.fn.on方法在事件传播的冒泡阶段绑定事件。但是,请注意,如果你仔细考虑,这几乎没有实际意义。很可能是因为你想防止在某些特定的表单元格单击时,事件在td->tr方向冒泡。