jQuery树形控件zTree

初始化如下:

    function zTreeInit(){
        parentCode = "";
        setting = {
            view: {
                dblClickExpand: false,
                showLine: true,
                expandSpeed: 100 //设置树展开的动画速度
            }, 
            data: {
                simpleData: {
                    enable: true,
                    idKey : "id", // id编号命名   
                    pIdKey : "pid", // 父id编号命名    
                    rootPId : "0"
                }
            },
            callback : {  
                onClick : function(event, treeId, treeNode, clickFlag) {  
                    //alert(" 节点id是:" + treeNode.id + ", 节点文本是:" + treeNode.name)
                    parentCode = treeNode.id;
                    refreshTable();
                },  
            }  
        };      
        GetTreeNodes();
    }
    function GetTreeNodes(){
        $.ajax({      
            url : 'sysRightDept/tree',
            async : false,  
            type: 'GET',  
            dataType : "json",
            contentType : 'application/json',   
               error: function () {//请求失败处理函数  
                alert('error');  
            },  
            success:function(treeNodes){ //请求成功后处理函数。    
                  $.fn.zTree.init($("#treeDept"), setting, treeNodes); //把后台封装好的简单Json格式赋给treeNodes  
            }  
        }); 
    }

模型类:

package com.entity;

public class zTreeResult {
    /**
     * id
     */
    private String id;
    /**
     * pId
     */
    private String pId;
    /**
     * name
     */
    private String name;
    /**
     * open
     */
    private boolean open;
    
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getPId() {
        return this.pId;
    }

    public void setPId(String pId) {
        this.pId = pId;
    }

    public String getName() {
        return this.name;
    }

    public void setName(String name) {
        this.name = name;
    }
    
    public boolean getOpen() {
        return this.open;
    }

    public void setOpen(boolean open) {
        this.open = open;
    }
}

zTree checkbox选择

全选/全不选

    function all_click() {
        if ($('#all').text() == '全选') {
            treeObj.checkAllNodes(true);
            $('#all').text('全不选');
        } else {
            treeObj.checkAllNodes(false);
            $('#all').text('全选');
        }
    }

获取选择集合

        var nodes = treeObj.getCheckedNodes(true);

不确定选择

    function updateNodes(json){
        var allNodes = treeObj.getNodes();//根节点的集合
        var nodes = treeObj.transformToArray(allNodes); // 将数据变成简单的 Array 集合
        for(var i=0;i<nodes.length;i++){
            for(var j=0;j<json.length;j++){
                if(nodes[i].id == json[j].objectCode){
                    nodes[i].checked=true;
                    treeObj.updateNode(nodes[i]);
                }
            }
        }
    }