今天编码时遇到一个问题,通过后台查询的数据设置前端checkbox的选中状态,设置选中状态为.attr('checked','true');没有问题,但是当数据重新加载时,checkbox应清空即所有checkbox为未选中状态,使用.attr('checked','false');无效果,且全部为选中状态,咦?好奇怪!
后来上网查发现checkbox属于bool类型的属性,只要有该属性,哪怕没有值也为选中状态。
解决办法:设置选中状态时使用.prop()方法,prop和attr最大的区别就是,prop应用于bool类型的属性,就是属性值为true和false两种;全部设为不选中状态,用removeAttr('checked')即可。