tinguo002

           

          樹形全部展示代碼

          jsp:代碼

          <script type="text/javascript">

            $(function(){
             //alert('${tip}');
             if('${tip}'!=''){
              $('#tip').css('display','inline-block');
             }
            });
           
            var zTreeObj;
            var allSelectedId="";
            var allSelectedName = "";
            var zNodes = ${data};
            var setting = {
             isSimpleData: true,
             treeNodeKey: "id",         //設置節點唯一標識屬性名稱
             treeNodeParentKey: "pId",  //設置節點的父節點唯一標識屬性名稱
             nameCol: "name",           //設置 zTree 顯示節點名稱的屬性名稱,此處默認為Name
             showLine: true,            //在樹型中是否顯示線條樣式
             
             check: {
              enable: true,
              chkStyle: "<%=type%>",
              chkboxType: <%=chkboxType%>,
              radioType: "all"
             },
             callback: {
              onClick: onClick
             },
             data: {
              simpleData: {
               enable: true
              }
             }
            };
             
            $(function(){
             $("#btnClose").bind("click",doClose);
             $("#btnConfirm").bind("click",doConfirm);
             zTreeObj = $("#tree").zTree(setting,zNodes);
            });
            
            //關閉窗口
            function doClose(){
             window.close();
            }
             
            function doConfirm(){
             var checkedNodes = zTreeObj.getCheckedNodes(true);
             alert(checkedNodes);
             for (i=0;i<checkedNodes.length;i++) {
             
              var treeNode = checkedNodes[i];
              alert(treeNode.id);
               if(!treeNode.open){
                allSelectedId += (allSelectedId == "" ? "" : ",") + treeNode.id;
                allSelectedName += (allSelectedName == "" ? "" : ",") + treeNode.name;      
               }
              }
             $('#hiddenId').val(allSelectedId);
             $('#hiddenName').val(allSelectedName);
            }
            
            function showMenu() {
             var deptname = $("#deptname");
             var offset = deptname.offset();
             $("#menu").width(deptname.width())
             .css({left:offset.left + "px", top:offset.top + deptname.outerHeight() + "px"})
             .slideDown("fast");
            }
            
            function hideMenu() {
             $("#menu").fadeOut("fast");
            }
            
            function onClick(e, treeId, treeNode) {
             alert(treeId);
             if(treeNode.checked){
              hideMenu();
             }else{
              zTreeObj.checkNode(treeNode, true, null, true);
             }
             return false;
            }
            
            function onCheck(e, treeId, treeNode){
             alert(treeNode.id);
             allSelectedId += (allSelectedId == "" ? "" : ",") + treeNode.pId+"|"+treeNode.id+"|"+treeNode.name;
            }
           </script>

          java代碼:

          public class CameraTreeAPI {
           private static Logger log = Logger.getLogger(CameraTreeAPI.class);
           
           /**
            *
            * 功能說明:獲取整個ztree攝像頭樹
            * @return  滿足ztree要求的json數據
            * String
            * @author chh
            * @Jun 14, 2012
            */
           public  String getZTree(String systemUnid,String selectUnid){
            selectUnid = ","+StrUtil.formatNull(selectUnid)+",";
            JSONArray array = new JSONArray();
            try{
             List<BusinessCamera> list = new BusinessCameraManager().doFindBySystemUnid(systemUnid);
             
             JSONObject top = new JSONObject();
             top.put("id","0");
             top.put("name","攝像頭列表");
             top.put("open",true);
             array.add(top);
             
             if(list!=null && list.size()>0){    
              for(Object object : list){
               BusinessCamera camera = (BusinessCamera)object;
               JSONObject json = new JSONObject();
               json.put("id",camera.getUnid());
               json.put("name",camera.getName());
               json.put("pId",camera.getPunid());
               json.put("checked", selectUnid.indexOf(camera.getUnid()) >= 0);
               if(hasChildren(list,camera)){
                json.put("open",true);
               }
               array.add(json);
              }
             }
            }catch(Exception e){
             e.printStackTrace();
             log.error(e.getMessage(),e);
            }
            return array.toString();
           }
           
           public boolean hasChildren(List<BusinessCamera> allData,BusinessCamera camera){
            if(allData == null || allData.isEmpty() || camera == null){
             return false;
            }
            for(BusinessCamera unit : allData){
             if(unit.getUnid().equalsIgnoreCase(camera.getUnid())){
              continue;
             }
             if(camera.getUnid().equalsIgnoreCase(unit.getPunid())){
              return true;
             }
            }
            return false;
           }
           
          }




          歡迎大家訪問我的個人網站 萌萌的IT人

          posted on 2013-12-30 19:16 一堣而安 閱讀(238) 評論(0)  編輯  收藏 所屬分類: java

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          收藏夾

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 杨浦区| 安阳市| 安远县| 宁波市| 封开县| 林芝县| 汝南县| 华阴市| 应城市| 邛崃市| 临漳县| 三明市| 惠来县| 石泉县| 类乌齐县| 澄江县| 盐池县| 鲜城| 米脂县| 台北市| 若尔盖县| 防城港市| 南丹县| 禹城市| 饶河县| 南涧| 上思县| 张家口市| 盐池县| 漳浦县| 鸡泽县| 岳阳市| 玉环县| 奇台县| 永春县| 五华县| 富民县| 定州市| 磐安县| 武平县| 宁阳县|