在做一个jquery树形结构的复选框选择的效果。

遇到的问题:

1.jquery复选框判断是否被选中

$(check).attr("checked"),可能提示为undefied;

  正确的做法是:$(check).prop("check");或者:$(check).is(":checked");

2.谷歌(firefox可能也有)中checkbox属性checked="checked"已有,但复选框却不显示打钩。

  上网查了下说是jquery版本的问题,如果jquery版本是1.9的话,就存在一个兼容性和稳定性的问题。在1.6+的版本中要用prop,尤其是checkbox的checked属性。

  正确的写法是:$(check).prop("checked",false);$(check).prop("checked",true);

另:下面的代码即实现树形结构的复选框任意选的问题。点击复选框时用的是change事件进行监听。

 //点击树形结构的checkbox。
var check = "input[type = 'checkbox']";
$(function () {
$("#browser").find(check).change(function () { if ($(this).is(":checked"))
$(this).parent().find(check).prop("checked", true);//this下边的所有的checkbox都当选。
else {
$(this).parent().find(check).removeAttr("checked");
}
if (! $(this).parent().siblings().children(check).is(":checked")) //如果this兄弟节点没有选中的话,执行循环。
{
checkRound($(this), this);
}
})
})
function checkRound(roundElement){
var parentElement=$(roundElement).parent().parent(); //获取当前元素的祖父元素ul。
if (parentElement.attr("id") != "browser") {
if (parentElement.parent().children(check).is(":checked"))
parentElement.parent().children(check).removeAttr("checked");
else {
parentElement.parent().children(check).prop("checked", true);//jQuery API明确说明,1.6+的jQuery要用prop,尤其是checkBox的checked的属性的判断
}
}
else{
return false;
}
checkRound(parentElement);
}

  

对checkbox 的checked的一些总结的更多相关文章

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

    2014-02-05 BIWEB开发技巧 9919 在做权限管理的时候,做了一个功能,就是当勾选栏目,把所有的权限全勾上.刚开始使用了如下代码: function check(id,check) { ...

  2. jQuery 操作复选框(checkbox) attr checked不起作用

    参考资料 http://www.paobuke.com/develop/javascript/pbk849.html   这天用到jQuery功能,想实现一个简单的复选框动态全选或全不选,结果测试发现 ...

  3. firefox中 checkbox属性checked="checked"已有,但复选框却不显示打钩的原因

    最近在调试复选框的应用,在ie没有问题,考虑到兼容性,试试了firefox,遇到了问题. 复选框绑定了click事件,点一次选中,再点击取消选中,依次类推.这个功能在ie中没问题,但是在firefox ...

  4. $('#checkbox').attr('checked'); 返回的是checked或者是undefined解决办法

    $('#checkbox').attr('checked'); 返回的是checked或者是undefined解决办法 <input type='checkbox' id='cb'/>  ...

  5. Jquery 获取checkbox的checked问题

    这个郁闷了,今天写这个功能的时候发现了问题,上网找了好多资料对照,更加纠结... 事实证明一切,自己测试了N遍,发现网上的说法和自己以前的理解都是错的,不知道大家有没发现. 下面来看看网上大多资料的说 ...

  6. jquery-1.10.2 获取checkbox的checked属性总是undefined

    项目中用的jquery-1.10.2 需要检测一个checkbox的选中状态,想当然的用 .attr("checked") ,结果发现,无论是否选中,这个值都是 undefined ...

  7. checkbox之checked的方法(attr和prop)区别

    1. $('#checkbox').click(function(){ if($('#checkbox').is(':checked')) { $(".sendmailhui"). ...

  8. checkbox属性checked="checked"但状态不是勾选状态的解决办法

    原因: jQuery API明确说明,1.6+的jQuery要用prop,不能用attr否则无效,尤其是checkBox的checked的属性的判断.

  9. Input类型是checkbox时checked属性获取

    记录一下checkbox 的 checked 属性的获取办法,以备忘记: 假如你的一个HTML页中有这么一段代码: <input name="chbRem" id=" ...

随机推荐

  1. jQuery源代码学习之五——jQuery.when

    jQuery.when提供了基于一个或多个对象的状态来执行回调函数的功能,通常是基于具有异步事件的异步队列. 如果传入多个异步队列,jQuery.when会返回一个新的主异步队列的只读副本(promi ...

  2. 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数008,matrix,矩阵函数

    ** 3dFromFundamentalMatrix( Rows1, Cols1, Rows2, Cols2, CovRR1, CovRC1, CovCC1, CovRR2, CovRC2, CovC ...

  3. Java enum(枚举)的用法详解(转)

    用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. p ...

  4. 无法解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "SQL_Latin1_General_CP1_CI_AS" 之间的排序规则冲突。

    select * from a, b  where a.Code=b.Code collate Chinese_PRC_CI_AS

  5. C#知识点有必要知会

    如果说你父类里面有一个成员比如int a;那么你子类里面也可以再定义一个int a,这个时候base.a和this.a表示的就不是一个变量了,如果说子类里面没有,那么base.a和this.a表示的都 ...

  6. logback文章推荐

    logback 配置详解:http://www.cnblogs.com/zhuawang/p/4002975.html Logback 日志输出到 mysql:http://www.codeweblo ...

  7. python基本数据类型之集合set

    一.集合的定义 set集合,是一个无序且不重复的元素集合. 集合对象是一组无序排列的可哈希的值,集合成员可以做字典中的键.集合支持用in和not in操作符检查成员,由len()内建函数得到集合的基数 ...

  8. zabbix通过API创建交换机模板,ifAdminStatus;ifOperStatus;ifInUcastPkts;ifAlias

    最终效果: 目的:         通过zabbix的Latest data查看主机就可以看到其监控结果. 监控项:         # 管理状态          IF-MIB::ifAdminSt ...

  9. 2.4G高频PCB天线设计

    2.4G高频PCB天线设计 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.   参考链接: http://bbs.rfeda.cn/read-htm-t ...

  10. \boot 空间不足解决方法

    ubuntu系统总是更新,有时是内核,有时是软件,最近的一次更新download中,提示\boot目录空间不足,我是将\boot单独划分在一个分区中的,当该目录空间不足时,可以利用命令删除没有用的镜像 ...