单击链接时忽略表单击功能

时间:2014-06-19 14:03:54

标签: javascript jquery

当用户在我的表格中点击一行时,我有一个点击方法。

$('.table > tbody > tr').click(function () {
    if ($(this).hasClass("info")) {
        $(this).removeClass("info");
    }
    else {
        $(this).addClass("info");
    }
});

但是,某些单元格中存在链接,如果单击链接,我想忽略上述方法。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

只需检查点击的链接是否event.target.closest()

$('.table > tbody > tr').click(function (e) { //Catch event here
    if($(e.target).closest('a').length) return; // Add this
    if ($(this).hasClass("info")) {
        $(this).removeClass("info");
    }
    else {
        $(this).addClass("info");
    }
});

答案 1 :(得分:1)

您可以点击从锚点传播的事件

$('.table > tbody > tr a').click(function (e) { 
    e.stopPropagation()
});

http://jsfiddle.net/JkebH/