jquery - 将 onclick 事件添加到 td,但不应在其中的链接上触发

标签 jquery events onclick propagation

我有这个:

$('table.data td').click(function() {
}

但问题是,当我单击该列中的链接时,也会触发此问题。我怎样才能防止这种情况发生?

尝试过类似 table.data td :not(a) 但似乎根本不起作用..

谢谢。

--

没关系,刚刚发现了 e.target.nodeName! (如果这是解决这个问题的最佳方法:!='A')

最佳答案

您可以通过以下方式停止子节点的事件传播:

$('table.data td a').click(function(evt){
  evt.stopPropagation();
  [.. Do other stuff ..]
});

jquery stopPropagation() 防止事件在 DOM 树中冒泡,从而防止任何父处理程序收到该事件的通知。

关于jquery - 将 onclick 事件添加到 td,但不应在其中的链接上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5753328/

相关文章:

c# - 添加EventHandler += EventHandler有什么作用?

c# - 如何在 KeyDown 事件上打开组合框的下拉菜单(组合项)?

javascript - jQuery .append() 不呈现 html 实体

android - 移动图书馆或图片库示例

jquery - RoyalSlider 溢出是可见的 IE 10

javascript - 在 CSS 转换期间触发事件

javascript - 如何使用 jquery 规范化非 jquery 事件

android - Kotlin 如何通过 lambda 使用自定义点击监听器而不是声明对象 : CustomClass

android - 在android中的onClick按钮中选择和取消选择

jQuery UI 按钮和 anchor 标记