ztree加载完数据后全部展开子节点

解决这个我使用了两种方法:

一、直接使用expandAll()方法来操作。

var treeObj = $.fn.zTree.getZTreeObj("tree");
    treeObj.expandAll(true);

 

二、在异步回调方法中去遍历。

    1.添加异步回调函数:

在setting的callback节点中做这个设置
callback: { onAsyncSuccess: zTreeOnAsyncSuccess, onClick: zTreeOnClick },

     2.在异步回调中遍历节点展开。

//全部展开子节点
    function zTreeOnAsyncSuccess() {
        var nodes = treeObj.getNodes()[0].children;
        for (var i = 0; i < nodes.length; i++) {
            if (nodes.length > 0) {
                treeObj.expandNode(nodes[i], true, true);
            }
        }
    }

我这里写的代码是因为我的数据是一次查询直接加载完所有节点,异步只会执行一次,所以我是全部遍历了,如果程序是分很多次异步加载的请根据自己的数据情况修改。

 

posted @ 2014-03-05 15:20  DevFans  阅读(997)  评论(0)    收藏  举报