Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Twitter引导:删除/切换复选框式按钮组的活动状态_Javascript_Jquery_Twitter Bootstrap - Fatal编程技术网

Javascript Twitter引导:删除/切换复选框式按钮组的活动状态

Javascript Twitter引导:删除/切换复选框式按钮组的活动状态,javascript,jquery,twitter-bootstrap,Javascript,Jquery,Twitter Bootstrap,通过twitters引导,我创建了一个具有radiobox行为的按钮组,让用户在不同状态之间进行选择。这是我们想象中的开箱即用 我用下面的示例安排了一个JSFIDLE: 我尝试(并且想要)的是,当我第二次单击活动按钮时,按下的状态可以被删除 我尝试使用jQuerysremoveClass()从btn类中删除active类,但它不起作用。(我还尝试使用.on()删除,但这只是保持活动始终隐藏/删除),在我看来,这是一个相当未知的事件现象。你可以阅读更多关于它的内容 编辑: 对ellaborate来

通过twitters引导,我创建了一个具有radiobox行为的按钮组,让用户在不同状态之间进行选择。这是我们想象中的开箱即用

我用下面的示例安排了一个JSFIDLE:

我尝试(并且想要)的是,当我第二次单击活动按钮时,按下的状态可以被删除

我尝试使用jQuerys
removeClass()
btn
类中删除
active
类,但它不起作用。(我还尝试使用
.on()
删除,但这只是保持活动始终隐藏/删除)

,在我看来,这是一个相当未知的事件现象。你可以阅读更多关于它的内容

编辑:

对ellaborate来说,一个简单的
.removeClass
不起作用的原因是,有多个侦听器在侦听同一事件。因此,当触发
click
事件时,一个普通的
.removeClass
会删除该类,但是Twitter引导处理程序会再次添加它!为了防止在您的处理程序之后执行任何其他处理程序,您可以执行
e.stopPropagation
。但是,这并不会阻止附加到与您的元素相同的元素的处理程序,它只会阻止树上更远的处理程序。要完全确保在您的处理程序之后不会执行其他处理程序,您可以使用。

引导程序3更新:

    $('body').on('click', '.btn-group .btn.active',function(e){
       e.preventDefault();
       e.stopImmediatePropagation();
       $(this).find('input').removeAttr('checked');
       $(this).removeClass('active');
    });

这太棒了-非常感谢!我确实尝试了
event.preventDefault()
,但没有成功<代码>事件。stopImmediatePropagation()按预期工作。我更新了JSFIDLE以缩小范围:再次感谢您的提示和帮助!没问题,我补充了一些说明,我想这可能会有帮助。嘿,它不起作用-可能是它在Bootstrap3中不起作用?@Dejell,我必须组合
e.preventDefault()
e.停止即时复制()以使其在引导程序3中正常工作,如下所述为我工作。