/**第一次用zTree不会显示树,
请求数据的url:var url="../clientserver/Departmentservlet?method=getDepartmentList";  
数据时这样的:{"page":{"pages":1,"rows":4},"departmentlist":[{"DEPARTMENT_ID":"1","DEPARTMENT_NAME":"开发部","DEPARTMENT_TYPE":"55555","DEPARTMENT_WHERE":"555511","UP_DEPARTMENT_ID":"0"},{"DEPARTMENT_ID":"2","DEPARTMENT_NAME":"行政部","DEPARTMENT_TYPE":"ddd","DEPARTMENT_WHERE":"ddd","UP_DEPARTMENT_ID":"1"},{"DEPARTMENT_ID":"3","DEPARTMENT_NAME":"财务部","DEPARTMENT_TYPE":"财务","DEPARTMENT_WHERE":"成都","UP_DEPARTMENT_ID":"2"},{"DEPARTMENT_ID":"4","DEPARTMENT_NAME":"开发1部","DEPARTMENT_TYPE":"1","DEPARTMENT_WHERE":"1","UP_DEPARTMENT_ID":"3"}]}
新手写的代码一沓糊涂,大家见谅啊:
**///
<script type="text/javascript" src="../js/jquery.js"></script>
<script type="text/javascript" src="../js/GridPanel.js"></script>
<script type="text/javascript" src="js/jquery.ztree-2.6.js"></script>
<body>
<div>测试</div>
<div id="treeDepart"></div>
</body>
</html> 
<script language="javascript">
var zTree1;     
      var  setting = {     
        isSimpleData : true,   //是否采用简单 Array 格式,true表示采用  
        treeNodeKey : "DEPARTMENT_ID",     
        treeNodeParentKey : "UP_DEPARTMENT_ID"//如果为true必须声明父子关系  
      };     
////ajax请求数据:
var treeNodes = new Array();  
      $(function(){  
             var url="../clientserver/Departmentservlet?method=getDepartmentList";  
    $.ajax({  
        url: url,  
        type:'post',  
        async: false ,   
        success: function(data){  
        var msg = eval('(' + data + ')');  
                      
        $.each(msg,function(i,item){  //////
        treeNodes.push(new Node(item.DEPARTMENT_ID,item.UP_DEPARTMENT_ID,item.DEPARTMENT_NAME));  
            });  
                }  
            });  
    });  
        function Node(DEPARTMENT_ID,UP_DEPARTMENT_ID,DEPARTMENT_NAME){  
            this.DEPARTMENT_ID=DEPARTMENT_ID;  
            this.UP_DEPARTMENT_ID=UP_DEPARTMENT_ID;  
            this.DEPARTMENT_NAME=DEPARTMENT_NAME;  
                                      
        }  

$(document).ready(function(){     
        zTree1 = $("#treeDepart").zTree(setting, treeNodes);     
     });   

解决方案 »

  1.   

    var setting = {
            data: { 
                key: {
                    name: "DEPARTMENT_NAME",
                    title: 'DEPARTMENT_NAME'
                }, 
                simpleData: {
                    enable: true,
                    idKey: "DEPARTMENT_ID", //id
                    pIdKey: "UP_DEPARTMENT_ID", //parentid
                    rootPId: '0'// root id
                } 
            }
        };
    setting改成这样.$.fn.zTree.init($("#treeDepart"), setting, treeNodes);
    树的初始化改成这样.如果你的ajax请求返回的数据是你说的那样的话,
    $.each(msg,function(i,item){ //////
    应该改成
    $.each(msg.departmentlist,function(i,item){ //////