EasyUI tree 选中父节点子节点全部选中,选中子节点父节点不选中

需求:EasyUI tree 选中父节点子节点全部选中,选中子节点父节点不选中

效果:

  1. /**

  2.  

    * 给树增加onCheck事件,首先使用cascadeCheck:false属性禁止全选,

  3.  

    * 然后获取当前选中节点的所有子节点,在判断其拥有子节点时对其所有字节点

  4.  

    * 进行遍历操作。在easyui中树节点的是否选中不是由checked:true

  5.  

    * 属性来控制,而是由class tree-checkbox0

  6.  

    * 和tree-checkbox1进行控制。--by wk

  7.  

    */

  8.  

    cascadeCheck:false,//取消勾选属性

  9.  

    onCheck:function(node, checked){

  10.  

    var childList = $(this).tree(‘getChildren‘,node.target);

  11.  

    if(childList.length>0){

  12.  

    var checkedTrue = function(){

  13.  

    childList.map(function(currentValue){

  14.  

    $("div[node-id=‘"+currentValue.id+"‘]").find(".tree-checkbox").removeClass("tree-checkbox0").addClass("tree-checkbox1");

  15.  

    })

  16.  

    };

  17.  

    var checkedFalse = function(){

  18.  

    $.each(childList,function(index,currentValue){

  19.  

    $("div[node-id=‘"+currentValue.id+"‘]").find(".tree-checkbox").removeClass("tree-checkbox1").addClass("tree-checkbox0");

  20.  

    })

  21.  

    };

  22.  

    var checkChangeProperties = checked==true ? checkedTrue() : checkedFalse();

  23.  

    }

  24.  

    }

原文地址:https://www.cnblogs.com/wangluochong/p/9374925.html

时间: 2024-12-08 15:28:13

EasyUI tree 选中父节点子节点全部选中,选中子节点父节点不选中的相关文章

Ext树控件第一次勾选父节点子节点没选中

项目中同事提出了这样一个bug,为了解决这个问题,牛逼闪闪的码农登场了,该码农专制各种公交抢上抢下抢座位,专制各种偷鸡摸狗,专制各种广场舞大妈扰民,专制各种不服,总之哪里有不平哪里就有撒哥的身影 扯淡结束,进入今天的正题 问题: 第一次勾选父节点子节点竟然没选中,逆天了啊 初步分析: 可能是之前代码的逻辑错误造成的,随进入调试阶段... 调试中发现该参数为空(原来写代码的也太没素质了), 没有内容然后想到没有内容导致下面的子节点不能便利出来,所以出来后没有选中,嘿嘿 然后加上该参数,接着查看然后

C# TreeView控件 父节点子节点勾选变化关联

项目用到了TreeView控件,父节点子节点勾选需要关联.子节点勾选,父节点同步.父节点勾选,所有子节点都勾选,并递归.网上找了一圈,好多代码都不满足要求.节点勾选,向下递归子节点,都实现了.节点勾选,向上递归,父节点同步勾选,也实现了.但是节点去除勾选,应该判断其同级所有节点,若同级节点都处于未勾选状态,则应该去除父节点勾选状态,并向上递归.这一点,没有找到合适的代码.就自己写了这部分代码.仅仅只是实现这个效果,代码还有优化的空间,后续有时间再来修改了. private void treeVi

Jquery easyui tree的使用

这个ui用的一切都是json数据.树也是如此! 后台需要返回与格式匹配的json数据才能正确加载树. 页面定义一个ui: <ul id="messageInfoAddTree" class="easyui-tree" checkbox="true" data-options="lines:true" style="height:94%"></ul> JS访问后台: //人员树 $('

tree的所有节点都勾选上或者取消勾选

还有一个功能,就是让tree的所有节点都勾选上或者取消勾选,在api中找了一下有一个方法: check target 选中指定节点. 那我们只能是选中根节点后,实现全选. getRoot none 获取根节点,返回节点对象. 全选: [javascript]view plaincopyprint? var root = $('#messageInfoAddTree').tree('getRoot'); $("#messageInfoAddTree").tree('check',root

easyui Tree模拟级联勾选cascadeCheck,节点选择,父节点自动选中,节点取消,父节点自动取消选择,节点选择,所有子节点全部选择,节点取消,所有子节点全部取消勾选

最近项目中用到easyui tree,发现tree控件的cascadeCheck有些坑,不像miniui 的tree控件,级联勾选符合业务需求,所以就自己重新改写了onCheck事件,符合业务需求.网上百度了很多资料,都没有完全符合自己业务场景的,所以就自己动手写咯. 先说一下自己的业务需求: 1.选中节点,上级以及所有直系上级节点自动选中,所有下级子孙节点全部自动选中: 2.取消选择节点,如果兄弟节点都未选择,则上级以及所有直系上级节点自动取消选择,所有下级子孙节点全部取消选中. 这里说一下c

JQuery EasyUi Tree获取所有checkbox选中节点的id和内容

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>    <head>        <meta name="generator" content="HTML Tidy, see www.w3.org">      

ztree获取当前选中节点子节点id集合的方法(转载)

本文实例讲述了ztree获取当前选中节点子节点id集合的方法.分享给大家供大家参考.具体分析如下: 要求:获取当前选中节点的子节点id集合. 步骤: 1.获取当前节点 2.用ztree的方法transformToArray()获取当前选中节点(含选中节点)的子节点对象集合. 3.遍历集合,取出需要的值. treeNode:当前选中节点对象 function getChildNodes(treeNode) { var naviTree = $.fn.zTree.getZTreeObj(zTreeI

EasyUI Tree判断节点是否是叶

方法1:  $('#domaincatalog').tree('isLeaf', node.target); 返回true或false ,true表示是叶节点, false即不是 方法2:官方文档中:看到每个节点都有一些属性,其中一个是state,我们就通过这个state来判断.state有两个值 open和closed表示当前节点 打开和关闭了树的状态.当state等于undefined的时候就表示当前节点是Leaf 叶了. 在tree的onclick事件上添加判断代码如下 $("#domai

Easyui Tree方法扩展 - getLevel(获取节点级别)

Easyui Tree一直就没有提供这个方法,以前没有用到,所以一直没怎么在意,这次自己用到了,顺便扩展了一个方法,分享给大家. $.extend($.fn.tree.methods, { getLevel:function(jq,target){ var l = $(target).parentsUntil("ul.tree","ul"); return l.length+1; } }); 用法: var node = $().tree("getSele