layui的树组件,可以实现除了勾选不勾选,还能实现半选状态吗?

提问 未结 8 128
不知春秋
不知春秋 2019-8-23
悬赏:20飞吻
版本:layui 浏览器:
需求
我在树的结构上加了勾选框,举个例子比如3级架构,1>2>3,4,5,6 (1是最上级,然后是2,3456这四级是最下级) 当我只要选择了最底层的一级,那么这个其余的两级都会自动勾选上,现在能不能如果我只选了1个或者个别几个的时候,1,2呈现出半勾选状态,然后当我3456都全选上时 12呈现全部勾选状态呢。。。。
回帖
  • 目前树正在重写,如果你需要半选,暂时可以用dtree或ztree等模块
    0 回复
  • 我公司都是拼的,树用的ztree,表格用的jqGrid等等
    0 回复
  • @HiTerry 谢谢回复
    0 回复
  • @灰小机大圣 ,谢谢留言
    0 回复
  • @HiTerry
    checkbarFun:{
    chooseBefore: function($i, node) { //复选框点击前的回调。
    console.log("before",node);
    return true;
    },
    chooseDone: function(checkbarNodesParam) { //复选框点击事件完毕后,返回该树关于复选框操作的全部信息。
    console.log("done",checkbarNodesParam);
    return ;
    }
    }
    绑定的这两个事件怎么有时候会触发不了呀,,,我觉得有点不灵敏,是通病吗,还是我布局影响到他了呢
    0 回复
  • @不知春秋 去看ztree的文档
    0 回复
  • 大神,我用的dtree,
    var DemoTree = dtree.render({
    elem: "#trees",
    // data: TreesJson, // 使用data加载
    // data: data, // 使用data加载
    data: res, // 使用data加载
    none:"暂无数据。",
    // ficon:["1"],
    // icon:["-1"],
    line:true,
    type:"all",
    checkbar:true,
    checkbarData:"change",
    checkbarType: "no-all" ,
    checkbarFun:{
    chooseBefore: function($i, node) { //复选框点击前的回调。
    console.log(node);
    return true;
    },
    chooseDone: function(checkbarNodesParam) { //复选框点击事件完毕后,返回该树关于复选框操作的全部信息。
    console.log(checkbarNodesParam);
    return ;
    }
    }
    });
    // 绑定节点点击
    dtree.on("node('trees')" ,function(obj){
    // console.log(obj);
    console.log(DemoTree.elem);
    });
    文档那一块我也看了,属性换了好几个,还是偶尔会出现不执行的现象呢。
    0 回复
  • 原来只是没有执行打印,后面的逻辑都执行了。。。。。
    0 回复