- A+
所属分类:jquery
今天在项目中遇到jquery中设置checkbox不勾中不起作用。以下两种写法都不行。
$(".checkbox__button").attr("checked",false); $(".checkbox__button").prop("checked",false);
后来用google浏览器的F12对比checkbox勾中和不勾中时的状态发现,不管勾中还是没勾中,checkbox元素的checked属性均未发生变化。变化的只有父节点的css。
这时我马上意识到此checkbox勾中和不勾中的效果是CSS控制的,好了,这下问题就简单了,只要把相应的css去掉即可达到不勾中的效果。
$(".checkbox__button").prop("checked",false); $(".checkbox__button").parent().removeClass('checkbox--checked'); $(".checkbox__button").parent().removeClass('checkbox__button--focus');