我有一个按钮组,我愿意根据活动按钮更新其他一些更改字段。 请参阅jsfiddle here
这是从文档中复制的HTML:
<div class="btn-group arrActiviteit arrUpdate" data-toggle="buttons">
<label class="btn btn-primary active" data-wat='foo'>
<input type="checkbox"> Item 1
</label>
<label class="btn btn-primary" data-wat='bar'>
<input type="checkbox"> Item 2
</label>
<label class="btn btn-primary" data-wat='something'>
<input type="checkbox"> item 3
</label>
<label class="btn btn-primary" data-wat='orElse'>
<input type="checkbox"> item 4
</label>
</div>
按钮行的行为应该如此
然后我在.arrUpdate
div上观察点击事件以进行更改。我有多个按钮组,都有.arrUpdate
类。这就是第二节课的原因:.arrActiviteit
$('.arrUpdate').click(function(e){
val = ''; // for holding the temporary values
$('.arrActiviteit label').each(function(key, value){
if(value.className.indexOf('active') >=0){
val += value.dataset.wat
}
})
// just for debug reasons.
$('#hierHier').html(val);
})
但似乎在触发click事件后,'active'类被添加。因此,#hierHier
中的值总是落后于一次点击。
我该如何解决这个问题? 或者有更好的方法来检索此复选框 - 数组中的所有活动按钮吗?
答案 0 :(得分:2)
解决
更新:更好的解决方案Twitter Bootstrap onclick event on buttons-radio
我使用超时解决了它,使你的函数在引导事件之后运行......
必须有其他方法来做到这一点......
$('.btn').on('click',function(e){
setTimeout(count);
})