jquery checkbox设置attr(“checked”,false)不起作用

  • 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');

 

 

ZPY

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: