Html -- ztree 使用

1、基本使用

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <link rel="stylesheet" type="text/css" href="plugins/ztree/css/metroStyle/metroStyle.css"/>
        <script src="plugins/jquery/jquery-3.4.1.min.js" type="text/javascript" charset="utf-8"></script>
        <script src="plugins/ztree/js/jquery.ztree.all.min.js" type="text/javascript" charset="utf-8"></script>
    </head>
    <body>
        <ul id="treeDemo" class="ztree"></div>
    </body>
    <script type="text/javascript">
        var setting = {
            view: {
                fontCss: getFont,   //自定义颜色
                showLine: false,    //不显示连接线
                showIcon: false,    //不显示图标
            },
            data: {
                simpleData: {
                    enable: true
                }
            },
            callback: {
                onClick: onClick
            }
        };
        var zNodes =[
            { 
                //自定义图标
                id:1, pId:0, name:"父节点1 - 展开", open:true, icon: "plugins/ztree/css/zTreeStyle/img/diy/2.png"
            },{ 
                //自定义图标
                id:11, pId:1, name:"父节点11 - 折叠", 
                iconOpen: "plugins/ztree/css/zTreeStyle/img/diy/1_open.png",
                iconClose: "plugins/ztree/css/zTreeStyle/img/diy/1_close.png"
            },{ 
                //自定义颜色
                id:111, pId:11, name:"叶子节点111", font:{'color':'red'}
            },
            { id:112, pId:11, name:"叶子节点112"},
            { id:113, pId:11, name:"叶子节点113"},
            { id:114, pId:11, name:"叶子节点114"},
            { id:12, pId:1, name:"父节点12 - 折叠"},
            { id:121, pId:12, name:"叶子节点121"},
            { id:122, pId:12, name:"叶子节点122"},
            { id:123, pId:12, name:"叶子节点123"},
            { id:124, pId:12, name:"叶子节点124"},
            { id:13, pId:1, name:"父节点13 - 没有子节点", isParent:true},
            { id:2, pId:0, name:"父节点2 - 折叠"},
            { id:21, pId:2, name:"父节点21 - 展开", open:true},
            { id:211, pId:21, name:"叶子节点211"},
            { id:212, pId:21, name:"叶子节点212"},
            { id:213, pId:21, name:"叶子节点213"},
            { id:214, pId:21, name:"叶子节点214"},
            { id:22, pId:2, name:"父节点22 - 折叠"},
            { id:221, pId:22, name:"叶子节点221"},
            { id:222, pId:22, name:"叶子节点222"},
            { id:223, pId:22, name:"叶子节点223"},
            { id:224, pId:22, name:"叶子节点224"},
            { id:23, pId:2, name:"父节点23 - 折叠"},
            { id:231, pId:23, name:"叶子节点231"},
            { id:232, pId:23, name:"叶子节点232"},
            { id:233, pId:23, name:"叶子节点233"},
            { id:234, pId:23, name:"叶子节点234"},
            { id:3, pId:0, name:"父节点3 - 没有子节点", isParent:true}
        ];
        
        //自定义颜色
        function getFont(treeId, node) {
            return node.font ? node.font : {};
        }

        //单击展开折叠
        function onClick(e,treeId, treeNode) {
            var zTree = $.fn.zTree.getZTreeObj("treeDemo");
            zTree.expandNode(treeNode);
        }
        
        $(function(){
            $.fn.zTree.init($("#treeDemo"), setting, zNodes);
        })
    </script>
</html>

2、异步请求

<script type="text/javascript">
    //传递的三个参数和一个自定义参数
    var setting = {
        async: {
            enable: true,
            url:"http://localhost:8081/demo/tree/datalist",
            autoParam:["id=customId", "name=customName", "level=customLevel"],
            otherParam:{"customParam":"customValue"},
        },
        callback: {
            beforeAsync: beforeAsync,
            onAsyncError: onAsyncError,
            onAsyncSuccess: onAsyncSuccess
        }
    };
    
    function beforeAsync(treeId, treeNode) {
        console.log("beforeAsync");
        return true;
    }
    function onAsyncError(event, treeId, treeNode, XMLHttpRequest, textStatus, errorThrown) {
        console.log("onAsyncError");
    }
    function onAsyncSuccess(event, treeId, treeNode, msg) {
        console.log("onAsyncSuccess");
    }
    
    $(document).ready(function(){
        $.fn.zTree.init($("#treeDemo"), setting);
    });
</script>

3、折叠展开

<script type="text/javascript">
    /**
     * 全部折叠
     */
    function collapseAll(){
        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
        zTree.expandAll(false);
    }
    
    /**
     * 全部展开
     */
    function expandAll(){
        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
        zTree.expandAll(true);
    }
    
    /**
     * 折叠第一级
     */
    function collapseFirstLevel(){
        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
        var nodes = getNodesByLevel(0);
        for(var i=0; i<nodes.length; i++){
            zTree.expandNode(nodes[i], false, null, null, false);
        }
    }
    
    /**
     * 展开第一级
     */
    function expandFirstLevel(){
        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
        var nodes = getNodesByLevel(0);
        for(var i=0; i<nodes.length; i++){
            zTree.expandNode(nodes[i], true, null, null, false);
        }
    }
    
    /**
     * 根据级别获取元素
     */
    function getNodesByLevel(level){
        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
        return zTree.getNodesByParam("level", level);
    }
    
    $(function(){
        $.fn.zTree.init($("#treeDemo"), setting, zNodes);
    })
</script>

4、checkbox

<script type="text/javascript">
    var setting = {
        check: {
            enable: true,
            chkboxType: {
                "Y":"ps", "N":"ps"
            }
        }
    };
    
    var zNodes =[
        { id:1, pId:0, name:"父节点1 - 展开", open:true },
        //根据情况设置checked属性
        { id:13, pId:1, name:"父节点13 - 没有子节点", isParent:true, checked: true},
    ];
        
    //获取选中的元素	
    function getCheckedNodes(){
        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
        var nodes = zTree.getCheckedNodes(true);
        console.log(nodes);
    }
    
    //获取未选中的元素
    function getUnCheckedNodes(){
        var zTree = $.fn.zTree.getZTreeObj("treeDemo");
        var nodes = zTree.getCheckedNodes(false);
        console.log(nodes);
    }
    
    $(function(){
        $.fn.zTree.init($("#treeDemo"), setting, zNodes);
    })
</script>

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值