javascript - 如何使用单击表格单元格(除了单击 jQuery 中的选择框)

标签 javascript jquery

有一个包含一些图像和一些选择框的表格。每当用户单击该行(意味着任何td)时,我想突出显示除选择框和图像之外的行

现在我正在使用这个,

$("selector").live("click",function() {
    $(this)
        .parents("tr:first")
        .toggleClass("diffColor")
    ;
});

但是,如果我单击选择框或图像,它就会应用该类。但当我单击选择框或任何其他图像时,我不需要。

看这里

提前致谢...

最佳答案

试试这个:

$(".selector").on("click", function (e) {
    if (e.target === this) $(this).parent("tr:first").toggleClass("diffColor");
});

假设 .selector是所有 td 的类名

在这里,this表示当前范围内的元素,始终是 td单击此处。

e.target表示实际点击的元素,可以是tdcheckboxtd 内的任何内容.

因此,如果实际单击的元素不是 td在当前范围内,e.target === this返回 false 并且什么也不会发生(不会触发任何点击事件),反之亦然。

关于javascript - 如何使用单击表格单元格(除了单击 jQuery 中的选择框),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16036661/

相关文章:

javascript - 单击菜单链接时切换类

javascript - R Shiny + plotly : change color of a trace with javascript without affecting markers and legend in multiple plots

javascript ckeditor a.$.parentNode 为 null

javascript - eBay API 使用 Javascript 按关键字查找商品返回 'Uncaught TypeError'

javascript - 如何更改 "AreYouSure"插件中的显示弹出窗口

jquery - 输入值属性中的ajax响应

javascript - 如何识别 Vanilla Picker 的主要全局对象?

php - 将链接中的文本值定位为一个输出中的多个链接

jquery - 使用Jquery查找当前url替换/修改类

jquery - 将一个 div 中的字符对齐到另一个 div 中的字符(垂直对齐)