我有这样的HTML语义UI切换复选框设置
<div class="ui toggle mini checkbox">
<input type="checkbox" name="myLayer">
<label>myLayer</label>
</div>
我想在复选框处于切换状态或未切换状态时执行一些操作。现在我写的是:
$('.ui.toggle').click(function() {
checked = $('.ui.toggle').is(':checked');
console.log(checked);
if (checked === true) {
myLayer.show();
}
else {
myLayer.hide();
}
});
但是,无论切换是打开还是关闭,的值checked
始终false
为!为什么会这样呢?
选择器'.ui.toggle'
引用了输入的父容器。正确的选择器将是'.ui.toggle input'
。然后,您还应该为变量获取一个变化的值。
既然你已经在单击处理程序,它会更好寻找你的输入是这样的:$(this).find('input').is(':checked')
。这样,jQuery不必再次解析整个DOM树来找到输入的子节点。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句