jquery hasclass或toggleclass问题

jquery hasclass或toggleclass问题,jquery,Jquery,我有一张带有.myclass的表格,里面有一些ul->li->标签 当我使用addClass时,它可以工作: $(".myclass label").each(function (){ var $this = $(this); $this.on("click", function(){ $this.addClass("active"); }); });` 但是当我试图检查类是否存在时,什么都没有发生 $(".myclass label")

我有一张带有
.myclass
的表格,里面有一些
ul
->
li
->
标签

当我使用
addClass
时,它可以工作:

$(".myclass label").each(function (){
    var $this = $(this);        
    $this.on("click", function(){
        $this.addClass("active");
    });
});`
但是当我试图检查类是否存在时,什么都没有发生

$(".myclass label").each(function (){
    var $this = $(this);    
    $this.on("click", function(){
        if($this.hasClass("active"))
            $this.removeClass("active");
        else
            $this.addClass("active");
    });
});
我试图使用
切换类
,但什么都没有。 我错在哪里

*编辑对不起,我忘记标签内有一个

<form action="" method="post" class="myClass">
 <ul>
  <li>
    <ul>
    <li class="item-1"><label><input type="checkbox">my label 1</label></li>
    <li class="item-22"><label><input type="checkbox">my label 2</label></li>
    <li class="item-34"><label><input type="checkbox">my label 3</label></li>

    • 我的标签1 我的标签2 我的标签3
等等


问题是标签->输入生成了两次单击。

工作正常->是的,正如adeneo所说,工作正常。请注意,您可以通过删除
每个
并使用
切换类
来改进逻辑。您是否检查了控制台中代码中其他地方的错误?您真正想要的是什么?我们可以看到DOM吗?我想知道您的选择器和DOM是否会触发两次单击事件,并立即打开和关闭活动标志。
$('.myclass label').on('click', function (event) {
    if( $(event.target).is("label") ) {
        if ($(event.target).hasClass("active"))  {   
            $(event.target).removeClass("active");
        }else{
            $(event.target).addClass("active");
        }
    }
});