Why does preventDefault() on a parent element's click 'disable' a checkbox?
问题 I encountered this situation recently (simplified here). Simply wrap a checkbox with an element and apply preventDefault() on it's click event and the checkbox becomes uncheckable. See this fiddle, but here's a snip: <div> <input type="checkbox"/> </div> /* Wrapper could be any element (and any ancestor element will work) */ $('div').on('click', function(e){ e.preventDefault(); }); /* Uncomment to make the checkbox work again $('input').on('click', function(e){ e.stopPropagation(); }); */ The