`

ztree的使用2---异步加载全部展开处理并处理唯一radio选中的方法

阅读更多

1:继承上篇文章,处理异步加载所有节点的方法

2:引入样式及类库

<!-- jquery ztree css -->
<link rel="stylesheet" href="${ctx}/resources/ztree/css/zTreeStyle/zTreeStyle.css" type="text/css">
<!-- jquery ztree   出现两个radio框
<script src="${ctx}/resources/ztree/js/jquery.ztree.all-3.3.js"></script>
-->
<script src="${ctx}/resources/ztree/js/jquery.ztree.core-3.3.js"></script>
<script src="${ctx}/resources/ztree/js/jquery.ztree.excheck-3.3.js"></script>
<script src="${ctx}/resources/ztree/js/jquery.ztree.exedit-3.3.js"></script>

3:设置

var setting = {
    data: {
            simpleData: {
                enable: true
            }
        },
        check: {
            enable: true,
            chkStyle: "radio",//
            radioType: "all"//还有这里,ALL标识整个Tree只准选中一个节点
        },
        async : {
            enable : true,
            url : "${ctx}/main/getClassTreeData.do",
            autoParam : [ "id"]
        },
        callback : {
            onClick :clickNode,
            beforeCheck:beforeCheck,
            //异步展开,在当前节点展开之后,触发回调函数
            onAsyncSuccess: onAsyncSuccess
        }
    };

$(document).ready(function() {
        zTree = $.fn.zTree.init($("#treeDemo"), setting, zNodes);

      
        expandNodes(zTree.getNodes());
    });
   
    function onAsyncSuccess(event, treeId, treeNode, msg) {
        expandNodes(treeNode.children);
    }
   
    //打开所有节点
    function expandNodes(nodes) {
        if (!nodes)
            return;
        for ( var i = 0, l = nodes.length; i < l; i++) {
            zTree.expandNode(nodes[i], true, false);
            expandNodes(nodes[i].children);
        }
    }

 

//点击节点name时触发

function clickNode() {
        var node = zTree.getSelectedNodes()[0];
        if (node) {
            if(!node.isParent){
                zTree.checkNode(node, true, false);
            }
        } else {
            alert("未找到节点");
        }
    }


 //节点元素type被选中时触发
    function beforeCheck(treeId,treeNode) {

       //返回 false ,不触发相应的动作
        if(treeNode.isParent){
            return false;
        }
    }

 

//获取当前选中的节点

function  getCheckedNode(){

   var nodes = zTree.getCheckedNodes(true);

 

}

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics