Jquery的attr方法实现checkbox的选中状态所带来的问题解析

$(document).ready(function() {
                   $("[name='all'").click(function  () {
                                $("[name='item']").prop("checked",this.checked);//此处this为dom对象,不能用jquery对象$(this)
                          }); $("#selectAll").click(function () { $("[name='item']").attr("checked",true); }); $("#unSelectAll").click(function () { $("[name='item']").attr("checked",false); }); });

 使用attr()方法改变checkbox的选中状态,在运行后第一次点击时改变。但如果再点击就无效了。

正确的方法是把attr()方法换成prop即可解决问题。

大牛说:“attr不可以对元素的特性做修改,但是prop可以,将prop替换attr就可以了!”

原文地址:https://www.cnblogs.com/beast-king/p/5464435.html