当父级具有单击事件时,复选框功能不起作用
Checkbox functionality not working when parent has a click event
我有一个复选框里面有一个点击事件附加到它的div。但是直接选中和取消选中复选框不起作用。
<div class="container" onclick="select(this)">
<input type="checkbox" value="" /><label>Item</label>
</div>
function select(e) {
var elm = $(e);
var chkBox = elm.find('input');
console.log(chkBox.is(':checked'));
if(chkBox.is(':checked')) {
chkBox.prop("checked", false);
}else{
chkBox.prop("checked", true);
}
}
Demo: http://jsfiddle.net/h45A5/
尝试正确绑定事件,而不是使用内联处理程序,
HTML:<div class="container">
<input type="checkbox" value="" /><label>Item</label>
</div>
JS:
$('div.container').click(function(e){
if($(e.target).is(':checkbox')){ return; }
var chkBox = $(this).find(':checkbox');
chkBox.prop("checked", !chkBox.is(':checked'));
});
演示你应该写var elm = getElementById('e');
而不是var elm = $(e);
自己试试:http://jsfiddle.net/h45A5/3/
如果我理解正确,您希望复选框在单击div
和checkbox
时切换,在这种情况下,添加
$('input[type="checkbox"]').click(function(e){
e.stopPropagation();
});
参考更新后的小提琴
相关文章:
- 具有onclick功能的自定义复选框在实际切换复选框之前执行功能
- 将复选框转换为图像,需要添加拖动功能才能更改图像
- 如何在具有分页功能的表格排序器中取消选中所有复选框
- 复选框树视图功能不起作用
- 复选框单击功能不起作用
- 在jqgrid中选中所有复选框的功能
- 选中复选框时如何激活功能
- 通过单击复选框启动智能功能
- 预选中复选框功能
- 复选框 - 选中取消选中功能不起作用
- Ruby on Rails - 我的“checkall”复选框功能跳转到数据表上的页面
- 使用Bootstrap Glyphicons创建复选框功能
- angular js中的复选框功能
- HTML javascript复选框功能
- 当父级具有单击事件时,复选框功能不起作用
- Ajax:将复选框功能转换为Wordpress中的输入字段和更新按钮
- Ajax复选框功能
- 像单选按钮一样的复选框功能
- Javascript 选中/取消选中所有复选框功能仅在有多个复选框时才有效
- 弹出窗口内的复选框功能