jQuery not()函数对我来说似乎无法正常工作

jQuery not()函数对我来说似乎无法正常工作,jquery,Jquery,我正在设计一个类似于Gmail的电子邮件系统,当用户点击一条消息时,它会将他带到该消息页面。用户还可以单击此链接左侧的复选框,以及启动/取消启动消息的按钮。我不希望单击复选框或星形图标将用户带到消息中 我该怎么做?我尝试使用jQuery not函数来排除这些,但是A它似乎对多个选择器不起作用,B如果我将复选框和星形图标组合到它们自己的div中,并且只在单个内部div上调用not函数,它仍然不起作用。not函数有什么问题吗?或者我是不是做错了?有什么建议吗 $('div.messages_list

我正在设计一个类似于Gmail的电子邮件系统,当用户点击一条消息时,它会将他带到该消息页面。用户还可以单击此链接左侧的复选框,以及启动/取消启动消息的按钮。我不希望单击复选框或星形图标将用户带到消息中

我该怎么做?我尝试使用jQuery not函数来排除这些,但是A它似乎对多个选择器不起作用,B如果我将复选框和星形图标组合到它们自己的div中,并且只在单个内部div上调用not函数,它仍然不起作用。not函数有什么问题吗?或者我是不是做错了?有什么建议吗

$('div.messages_list').click(function(){
    var messageid = $(this).attr('messageid');
    $.ajax({
    type: "POST",
        url: "./ajax.message_go.php",
        data: "id=" + messageid,
        success: function(data){
            window.location.href = data;
        },
        error: function(){
        }
    });
});    

您可以为star和checkbox创建单独的单击事件处理程序,并在其中调用event.stopPropagation以避免消息单击

$(".star").click(function(event){
   event.stopPropagation();
});
当然,如果星号和复选框是消息框的子项。

您可以使用$.filter

$('div.messages_list').filter("a").click()

我陷入了一个有点类似的情况。所以我所做的是,这可能很奇怪,但是,当点击发生在星号和复选框上时,我在div“disable click”中添加了一个类。有了这段代码,只需添加这段代码片段

if(!$(this).hasClass('disable-click')) 
{ --perform ur action-- }

  This will solve your problem I belive..

用你的梦想激发你的激情。

我看不出你在代码中的任何地方都使用了not函数?数据:{id:messageid},而不是数据:id=+messageid,会更干净。对不起,时间太晚了,键入此消息时我很累。我的原始代码是这样的:$'div.messages\u list'。而不是'div.notme'。单击函数{这很奇怪,而且工作不正常。是的!谢谢!!!这是我最后使用的解决方案。其他解决方案很好,但由于某些原因不太正确。非常感谢。