我如何在下面的代码中包含:not method jquery

时间:2014-10-30 06:08:39

标签: jquery

当用户点击表格行时,我正在调用一个弹出窗口...

enter image description here

整行是可点击区域以调用弹出窗口。我为这些东西编写的代码是:

$('.assignPanel tbody.contentRows tr').on('click', function () {
            $('.sliderPanel1').show();                         
        });

工作得非常好。没有问题。

我面临的问题是,当用户点击该行中可用的链接时,让我们说'Gary Horsley'我已经标记了蓝色边框,弹出窗口不应该打开。

而且,当点击'Gary Horsley'链接时,必须打开另一种弹出窗口。我怎样才能做到这一点?我听说':not'方法有助于完成这项工作。我试过但我搞砸了。在这方面有人可以帮助我吗?

2 个答案:

答案 0 :(得分:1)

您需要在子点击元素中停止传播,然后单击并编写所需的代码以打开弹出窗口:

$(".assignPanel tbody.contentRows tr *").click(function(e) {
    e.stopPropagation();
    //show another pop up
});

答案 1 :(得分:0)

Milind Anantwar给出的解决方案看起来更清晰,但这是另一种方法,使用:not -

$('.assignPanel tbody.contentRows tr :not("a")').on('click',function(e) {
      $('.sliderPanel1').show();   
});

请测试一次。我忽略了所有锚元素(您可能需要将:not()内部的内容更改为特定的锚元素)。如果你的锚元素是tr的直接子元素,那么这应该有用。