今天在查看他人源码时看到在判断复选框是否选中时,与自己的写法不同:
.is(":checked") vs .prop("checked") == true
因此,特地百度了一下,结果如下:
.attr(‘checked’): //看版本1.6+返回:”checked”或”undefined” ;1.5-返回:true或false
.prop(‘checked’): //1.6+:true/false
.is(‘:checked’): //所有版本:true/false//别忘记冒号哦
jquery赋值checked的几种写法:
所有的jquery版本都可以这样赋值:
// $(“#cb1″).attr(“checked”,”checked”);
// $(“#cb1″).attr(“checked”,true);
jquery1.6+:prop的4种赋值:
// $(“#cb1″).prop(“checked”,true);//很简单就不说了哦
// $(“#cb1″).prop({checked:true}); //map键值对
// $(“#cb1″).prop(“checked”,function(){
return true;//函数返回true或false
});
//$(“#cb1″).prop(“checked”,”checked”);
综上所述:在判断复选框、单选框等有checked属性的元素是否被选中时,兼容最好的是:
.is(‘:checked’): //所有版本:true/false//别忘记冒号哦