ztree动态渲染子节点

function initZTree(){

var setting = {

view: {

            showLine: false,

            showIcon: true

        },

check : {

/* enable : false,

nocheckInherit : false */

enable: false,

chkStyle: "checkbox",

/*

Y 属性定义 checkbox 被勾选后的情况。 

N 属性定义 checkbox 取消勾选后的情况; 

"p" 表示操作会影响父级节点; 

"s" 表示操作会影响子级节点。

*/

//表示checkbox勾选操作,仅仅影响子节点;取消勾选操作。影响父子节点

chkboxType: { "Y": "ps", "N": "ps" }

},

open: true,

data : {

key : { name: "text"},

simpleData : {

enable : true,

idKey : "id",

pIdKey : "pid",

}

},

callback:{

onClick: onClick,

onExpand : onExpand

}

};

var data = [{id:'1',text:'福建',pid:'',isParent:true},

{id:'2',text:'广东',pid:'',isParent:true},

{id:'3',text:'浙江',pid:'',isParent:true},

{id:'4',text:'陕西',pid:'',isParent:true},

{id:'5',text:'山西',pid:'',isParent:true},

{id:'6',text:'河南',pid:'',isParent:true},

{id:'7',text:'北京',pid:'',isParent:true}

            ];

$.fn.zTree.init($("#ztree"), setting, data);

}


function onClick(event, treeId, treeNode){

var treeObj = $.fn.zTree.getZTreeObj(treeId);

    var node = treeObj.getNodeByTId(treeNode.tId);

    /* var sNodes = treeObj.getSelectedNodes();

    var level = sNodes[0].level; */

    var level = node.level;

    alert("id="+node.id+",pid="+node.pid+",level="+level);

}

function onExpand(event, treeId, treeNode){

var treeObj = $.fn.zTree.getZTreeObj(treeId);

    var node = treeObj.getNodeByTId(treeNode.tId);

    var sNodes = treeObj.getSelectedNodes();

    var level = node.level;

    

var data1 = [{id:node.id+'1',text:'福建',pid:node.id,isParent:true},

{id:node.id+'2',text:'广东',pid:node.id,isParent:true},

{id:node.id+'3',text:'浙江',pid:node.id,isParent:true},

{id:node.id+'4',text:'陕西',pid:node.id,isParent:true},

{id:node.id+'5',text:'山西',pid:node.id,isParent:true},

{id:node.id+'6',text:'河南',pid:node.id,isParent:true},

{id:node.id+'7',text:'北京',pid:node.id,isParent:true}

        ];

var data2 = [{id:node.id+'1',text:'福建',pid:node.id},

{id:node.id+'2',text:'广东',pid:node.id},

{id:node.id+'3',text:'浙江',pid:node.id},

{id:node.id+'4',text:'陕西',pid:node.id},

{id:node.id+'5',text:'山西',pid:node.id},

{id:node.id+'6',text:'河南',pid:node.id},

{id:node.id+'7',text:'北京',pid:node.id}

        ];

    if(node.children == null || node.children == "undefined"){

    if(level == 0){

    //添加新节点

            newNode = treeObj.addNodes(node, data1);

    }else{

    //添加新节点

            newNode = treeObj.addNodes(node, data2);

    }

   

    }

}


{context}