checkbox属性checked="checked"已有,但却不显示打勾的解决办法

#### 判断checkbox  是否选中

方法一:
if ($("#checkbox-id").get(0).checked) {

    // do something
}

方法二:
if($('#checkbox-id').is(':checked')) {

    // do something
}

方法三:
if ($('#checkbox-id').attr('checked')) {

    // do something
}

 

 

 

 

 

 

 

#### 查阅其他网站  发现主要是因为Jquery的版本问题

 

1、attr():

获取匹配的元素集合中的第一个元素的属性的值 或 设置每一个匹配元素的一个或多个属性。

 在jQuery 1.6中,当属性没有被设置时候,.attr()方法将返回undefined。若要检索和更改DOM属性,比如元素的checked, selected, 或 disabled状态,请使用.prop()方法。

2、removeAttr(): 

从每一个匹配的元素中删除一个属性

1.6以下版本在IE6使用JQuery的removeAttr方法删除disabled是无效的。解决的方法就是使用$("XX").prop("disabled",false);
1.7版本在IE6下已支持删除disabled。

3、prop():

获取匹配的元素集中第一个元素的属性(property)值或设置每一个匹配元素的一个或多个属性。

随着一些内置属性的DOM元素或window对象,如果试图将删除该属性,浏览器可能会产生错误。jQuery第一次分配undefined值的属性,而忽略了浏览器生成的任何错误。

 
 
  
                 if($(this).is(':checked')){
                                   //让按钮选中
                                    $(".ct2_right6").find(".checkOne").prop("checked","checked");
                           }else{
                                   // 让按钮不选中
                                  $(".ct2_right6").find(".checkOne").removeAttr("checked");
                           }