ztree使用教程

longlyseul longlyseul     2023-05-01     414

关键词:

这两天项目需要写一个树形帮助,学习了我们项目组的老师的Ztree的树的写法,实现了这个帮助,下面来总结一下Ztree的用法。

(也是参考的一篇csdn上的博客了)

zTree 是一个依靠 jQuery 实现的多功能 “树插件”。被广泛应用在系统的权限管理中,本文讲解zTree的一般应用

zTree 官网 http://www.treejs.cn/v3/main.php#_zTreeInfo

1、zTree 官网下载 ztree

技术图片

技术图片 

下载好后放到项目相关目录下

技术图片

2、编写相关代码

引入相关js 、 css 文件,代码如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<script type="text/javascript" src="js/jquery-3.2.1.min.js" ></script>
		<link rel="stylesheet" href="ztree/css/metroStyle/metroStyle.css" rel="stylesheet" type="text/css" />
		<script type="text/javascript" src="ztree/js/jquery.ztree.all.min.js" ></script>
	</head>
	<body>
		
	</body>
</html>

上述代码中的 css 还可以引入如下两种、它们分别具有不同的样式

<link rel="stylesheet" href="ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" />

 或

<link rel="stylesheet" href="ztree/css/awesomeStyle/awesome.css" rel="stylesheet" type="text/css" />

 快速实现一个简单的树,请看如下代码,相关配置说明已写在代码中

<!DOCTYPE html>
<html>
   <head>
     <meta charset="utf-8" />
     <title></title>
     <script type="text/javascript" src="js/jquery-3.2.1.min.js" ></script>
     <link rel="stylesheet" href="ztree/css/metroStyle/metroStyle.css" rel="stylesheet" type="text/css" />
     <!--
     其他两种css风格样式
     <link rel="stylesheet" href="ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" />
     <link rel="stylesheet" href="ztree/css/awesomeStyle/awesome.css" rel="stylesheet" type="text/css" />
      -->
      <script type="text/javascript" src="ztree/js/jquery.ztree.all.min.js" ></script> 
    </head>
    <body>
        <div>
           <ul id="treeDemo" class="ztree"></ul>
        </div>
        <script>
           var settingss = 
                            data: 
                              simpleData: 
                                enable: true,  //true 、 false 分别表示 使用 、 不使用 简单数据模式
                                idKey: "id",  //节点数据中保存唯一标识的属性名称
                                pIdKey: "parentId",    //节点数据中保存其父节点唯一标识的属性名称  
                                rootPId: -1  //用于修正根节点父节点数据,即 pIdKey 指定的属性值
                                          ,
                              key: 
                                name: "menuName"  //zTree 节点数据保存节点名称的属性名称  默认值:"name"
                                   
                                  ,
                            check:
                                enable:true,  //true 、 false 分别表示 显示 、不显示 复选框或单选框
                                nocheckInherit:true  //当父节点设置 nocheck = true 时,设置子节点是否自动继承 nocheck = true 
                                  
                            ;
					
            //数据
            var zNodes = [
               //注意,数据中的 menuName 必须与 settingss 中key 中定义的name一致,否则找不到
               menuName:"父节点1", open:true, children:[
                   menuName:"子节点1", menuName:"子节点2"],
               menuName:"父节点2", open:true, children:[
                   menuName:"子节点3", menuName:"子节点4"]
               ];
					
            zTreeObj = $.fn.zTree.init($("#treeDemo"), settingss, zNodes); //初始化树
            zTreeObj.expandAll(true);    //true 节点全部展开、false节点收缩
       </script>
   </body>
</html>

  运行效果如下图

技术图片

3、使用ajax获取数据

实际项目开发中,数据往往是从后台服务器获取的,而不是在前端写死的。如何实现ajax获取数据,请看如下代码

数据库表结构及数据如下

技术图片

后台接口代码如下

mapper层

import java.util.List;
import org.apache.ibatis.annotations.Select;
import com.che.pri.bean.MenuTest;
 
public interface MenuTestMapper 
	
	@Select("select id as id, parent_id as parentId, menu_name as menuName from menu_test")
	List<MenuTest> getMenuTestList();
 

controller层

import java.util.HashMap;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.che.pri.mapper.MenuTestMapper;
@Controller
public class MenuTestController 
	
	@Autowired
	private MenuTestMapper menuTestMapper;
 
	@ResponseBody
	@RequestMapping("/getMenuTestList")
	public Object getMenuTestList() 
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("menulists", menuTestMapper.getMenuTestList());
		return map;
	}

html代码如下

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8" />
      <title></title> 
      <script type="text/javascript" src="js/jquery-3.2.1.min.js" ></script>
      <link rel="stylesheet" href="ztree/css/metroStyle/metroStyle.css" rel="stylesheet" type="text/css" />
      <!--
      其他两种css风格样式
      <link rel="stylesheet" href="ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" />
      <link rel="stylesheet" href="ztree/css/awesomeStyle/awesome.css" rel="stylesheet" type="text/css" />
      -->
      <script type="text/javascript" src="ztree/js/jquery.ztree.all.min.js" ></script>
  </head>
      <body>
        <div>
            <ul id="treeDemo" class="ztree"></ul>
        </div>
        <script>
            var settingss = 
                data: 
                    simpleData: 
                        enable: true,  //true 、 false 分别表示 使用 、 不使用 简单数据模式 
                        idKey: "id",   //节点数据中保存唯一标识的属性名称
                        pIdKey: "parentId",    //节点数据中保存其父节点唯一标识的属性名称 
                        rootPId: -1  //用于修正根节点父节点数据,即 pIdKey 指定的属性值
                                ,
                    key: 
                        name: "menuName"  //zTree 节点数据保存节点名称的属性名称  默认值:"name"
                         
                       ,
                check:
                       enable:true,  //true 、 false 分别表示 显示 、不显示 复选框或单选框
                       nocheckInherit:true   //当父节点设置 nocheck = true 时,设置子节点是否自动继承 nocheck = true 
                      
                            ;
							
            $(document).ready(function()
               $.ajax(
                    type:"get",
                    url:"http://localhost:8089/getMenuTestList",
                    async:true,
                    success:function(res)
			    		
                     zTreeObj = $.fn.zTree.init($("#treeDemo"), settingss, res.menulists); //初始化树
                     zTreeObj.expandAll(true);   //true 节点全部展开、false节点收缩
                                         
                    );
            );			        
       </script>
   </body>
</html>

 运行效果如下

技术图片

4、设置默认选中节点

在开发中,有时我们需要默认选中一些节点。比如修改用户角色或权限时,就会有这样的需求,如何对ztree的节点进行默认选中,请看如下代码

var node = zTreeObj.getNodeByParam("id", 7);
zTreeObj.checkNode(node, true, false);

通过每一条节点数据的 id 进行设置

具体看如下代码

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8" />
      <title></title> 
      <script type="text/javascript" src="js/jquery-3.2.1.min.js" ></script>
      <link rel="stylesheet" href="ztree/css/metroStyle/metroStyle.css" rel="stylesheet" type="text/css" />
      <!--
      其他两种css风格样式
      <link rel="stylesheet" href="ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" />
      <link rel="stylesheet" href="ztree/css/awesomeStyle/awesome.css" rel="stylesheet" type="text/css" />
      -->
      <script type="text/javascript" src="ztree/js/jquery.ztree.all.min.js" ></script>
  </head>
      <body>
        <div>
            <ul id="treeDemo" class="ztree"></ul>
        </div>
        <script>
            var settingss = 
                data: 
                    simpleData: 
                        enable: true,  //true 、 false 分别表示 使用 、 不使用 简单数据模式 
                        idKey: "id",   //节点数据中保存唯一标识的属性名称
                        pIdKey: "parentId",    //节点数据中保存其父节点唯一标识的属性名称 
                        rootPId: -1  //用于修正根节点父节点数据,即 pIdKey 指定的属性值
                                ,
                    key: 
                        name: "menuName"  //zTree 节点数据保存节点名称的属性名称  默认值:"name"
                         
                       ,
                check:
                       enable:true,  //true 、 false 分别表示 显示 、不显示 复选框或单选框
                       nocheckInherit:true   //当父节点设置 nocheck = true 时,设置子节点是否自动继承 nocheck = true 
                      
                            ;
							
            $(document).ready(function()
               $.ajax(
                    type:"get",
                    url:"http://localhost:8089/getMenuTestList",
                    async:true,
                    success:function(res)
			    		
                     zTreeObj = $.fn.zTree.init($("#treeDemo"), settingss, res.menulists); //初始化树
                     zTreeObj.expandAll(true);   //true 节点全部展开、false节点收缩
 
                     //设置选中节点
                     var node = zTreeObj.getNodeByParam("id", 7);
                     zTreeObj.checkNode(node, true, false); 
                         
                     var node = zTreeObj.getNodeByParam("id", 1);
                     zTreeObj.checkNode(node, true, false); 
                         
                     var node = zTreeObj.getNodeByParam("id", 4);
                     zTreeObj.checkNode(node, true, false); 
                                         
                    );
            );			        
       </script>
   </body>
</html>

  运行效果

技术图片

 

 

 其他内容可参考官网API

在这里声明一下版权

————————————————
版权声明:本文为CSDN博主「悟世君子」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wsjzzcbq/article/details/83029532

 

以上都是学习人家写的内容了,我介绍一下我在项目中对Ztree的一些理解。

首先,我需要写一个js让我跳到我想选择的树的页面里面去,并且从树的页面里面获取到我所需要的返回值。

// 选择员工
function selectDeviceType() 
    var msg = "选择人员";
    $.dialog(
        type: ‘iframe‘,
        url: context + "/jsp/genersoft/public/health/HealthRyDepartment.jsp",
        title: msg,
        width: 580,
        height: 400,
        onclose: function () 
            var nodes = this.returnValue;
            $("#healthUserId").val(nodes[0].ORGAN_ID);
            $("#username").val(nodes[0].ORGAN_NAME);
            $("#healthOrgId").val(nodes[0].GRANDPA_ID);
            $("#departmentname").val(nodes[0].GRANDPA_NAME);
            $("#username").change();
        
    );
 

  接下来,就是我们选择帮助的页面,在这个页面里,需要初始化一下Ztree,构造一下Ztree的数据属性,写个ajax,给他一个后台的url,让他查数据,返回到前台来,再构造这个树。

事先需要引一些js

<script type="text/javascript" src="<l:asset path=‘jquery.js‘/>"></script>
<script type="text/javascript" src="<l:asset path=‘bootstrap.js‘/>"></script>
<script type="text/javascript" src="<l:asset path=‘form.js‘/>"></script>
<script type="text/javascript" src="<l:asset path=‘ui.js‘/>"></script>
<script type="text/javascript" src="<l:asset path=‘loushang-framework.js‘/>"></script>
<script type="text/javascript" src="<l:asset path=‘i18n.js‘/>"></script>
<script type="text/javascript" src="<l:asset path=‘ztree.js‘/>"></script>
    

 然后,初始化Ztree,构造这个树。

    <SCRIPT LANGUAGE="JavaScript">
        var context = "<l:assetcontext/>";
        var dialog = parent.dialog.get(window);
        var zTreeObj;
        var setting = 

            check: 
                enable: true,
                chkStyle: "radio",
                radioType: "all",
                chkboxType: "Y": "s", "N": "s"
            
        ;

        function filter(treeId, parentNode, childNodes) 
            if (!childNodes) return null;
            for (var i = 0, l = childNodes.length; i < l; i++) 
                childNodes[i].name = childNodes[i].name.replace(/.n/g, ‘.‘);
            
            return childNodes;
        

        // zTree 的数据属性,深入使用请参考 API 文档(zTreeNode 节点数据详解)
        var zNodes = [
            
                name: "test1",
                open: true,
                children: [
                    
                    	name:"test1_1",
                    	open:true,
                    	children: [
                            name: "test1_1_1",
                            name: "test1_1_2"
                        ]
                    ,
                    
                    	name:"test1_2",
                    	open:true,
                    	children: [
                            name: "test1_2_1",
                            name: "test1_2_2"
                        ]
                    ,
                    
                ]
            ,
            
                name: "test2",
                open: true,
                children: [
                    
                    	name:"test2_1",
                    	open:true,
                    	children: [
                            name: "test2_1_1",
                            name: "test2_1_2"
                        ]
                    ,
                    
                    	name:"test2_2",
                    	open:true,
                    	children: [
                            name: "test2_2_1",
                            name: "test2_2_2"
                        ]
                    ,
                    
                ]
            ,
        ];

        $(document).ready(function () 
            $.ajax(
                type: "POST",
                url: context + "/service/health/treeData2",
                data: ,
                dataType: "json",
                aysn: false,
                success: function (respMsg) 
                    zNodes = respMsg;
                    zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
                    var node = zTreeObj.getNodeByParam("name", ‘$param.name‘, null);
                    if (node)//判断有查询到节点
                        //方法一:
                        // $("#"+node.tId+"_a").click();//点击查询到的节点
                        //方法二:
                        zTreeObj.selectNode(node,true);//选
                        // node.checked = true;
                        // zTreeObj.updateNode(node);
                
            );
            // var zTreeMenu = $.fn.zTree.getZTreeObj("treeDemo");//根据treeID(zTree的DOM容器的id)获取
            //zTree对象的方法,必须初始化zTree才可以使用此方法
            // var treeObj = $.fn.zTree.getZTreeObj("tree");
            // var node = zTreeObj.getNodeByParam("id", 1, null);
            // var node=zTreeObj.getNodeByParam(‘name‘,,null);

            // 确定按钮
            $("#confirm").click(function () 
                confirm();
            );

            // 取消按钮
            $("#clear").click(function () 
                clear();
            );
        );

        // 确定按钮
        function confirm() 
            var msg = L.getLocaleMessage("bsp.organ.053", "请选择单个节点!");
            var selectedNodes = zTreeObj.getCheckedNodes();
            if (selectedNodes.length != 1) 
                $.sticky(msg, 
                    autoclose: 1000,
                    position: "center",
                    style: "warning"
                );
                return false;
            
            if(selectedNodes["0"].STRU_LEVEL!="4")
            	 $.sticky("请选择职工", 
                     autoclose: 1000,
                     position: "center",
                     style: "warning"
                 );
                 return false;
            

            dialog.close(selectedNodes);
            dialog.remove();
        

        // 取消
        function clear() 
            var dialog = parent.dialog.get(window);
            dialog.close("clear");
            dialog.remove();
            return false;
        
    </SCRIPT>
</HEAD>
<BODY>
<div>
    <ul id="treeDemo" class="ztree"></ul>
    <div class="foot">
        <div class="btnGroup">
            <button id="confirm" type="button" class="btn ue-btn"><spring:message code="bsp.organ.046"
                                                                                          text="确定"/></button>
            <button id="clear" type="button" class="btn ue-btn"><spring:message code="bsp.organ.048"
                                                                                text="清除"/></button>
        </div>
    </div>
</div>
</BODY>
</HTML>

跳后台url,并对数据做一下拼接。

Contrller层

@Controller
@RequestMapping(value = "/health")
public class HealthController 
	@Autowired
	private IHealthService healthService;
	/**
     * 列表跳转页面
     * 
     * @return 列表页面
     */
	@RequestMapping
    public String queryHealth() 
        return "genersoft/public/health/healthQuery";
    
	
    @RequestMapping("/treeData2")
    @ResponseBody
    public List treeData2(HttpServletRequest req) 
        return healthService.getTypeTreeData2("");
    


Service层

@Service("healthService")
public class HealthServiceImpl implements IHealthService

	@Autowired
	private HealthMapper healthMapper;
	@Override
	@Override
	public List getTypeTreeData2(String struId) 
		// TODO Auto-generated method stub
		List<Map<String,Object>> list = healthMapper.getTreeData2();
		List<Map> resList = new ArrayList<>();
		//单位list
		List<Map<String,Object>> UnitList=new ArrayList<Map<String,Object>>();
		//部门list
		List<Map<String,Object>> DepartmentList=new ArrayList<Map<String,Object>>();
		//岗位list
		List<Map<String,Object>> PostList=new ArrayList<Map<String,Object>>();
		//人员list
		List<Map<String,Object>> PersonList=new ArrayList<Map<String,Object>>();
		for(Map<String,Object> unit:list) 
			if(Integer.parseInt(String.valueOf(unit.get("STRU_LEVEL")))==1) 
				UnitList.add(unit);
			
		
		for(Map<String,Object> department:list) 
			if(Integer.parseInt(String.valueOf(department.get("STRU_LEVEL")))==2) 
				DepartmentList.add(department);
			
		
		for(Map<String,Object> post:list) 
			if(Integer.parseInt(String.valueOf(post.get("STRU_LEVEL")))==3) 
				PostList.add(post);
			
		
		for(Map<String,Object> person:list) 
			if(Integer.parseInt(String.valueOf(person.get("STRU_LEVEL")))==4) 
				PersonList.add(person);
			
		
		List<Map<String, Object>> temp1List=new  ArrayList<Map<String, Object>>();
		List<Map<String, Object>> temp3List=new  ArrayList<Map<String, Object>>();
		List<Map<String, Object>> temp5List=new  ArrayList<Map<String, Object>>();
		for(Map<String,Object> temp6:DepartmentList) 
		for(Map<String, Object> temp1:PostList) 	
			List<Map<String,Object>> greatgrandsonList=new ArrayList<Map<String,Object>>();
			greatgrandsonList.clear();
			for(Map<String,Object> temp2:PersonList) 
				if(temp2.get("PARENT_ID").equals(temp1.get("ORGAN_ID"))) 
					temp2.put("name",temp2.get("ORGAN_NAME"));
					temp2.put("PARENT_NAME", temp1.get("ORGAN_NAME"));
					if(temp1.get("PARENT_ID").equals(temp6.get("ORGAN_ID"))) 
					temp2.put("GRANDPA_ID", temp6.get("ORGAN_ID"));
					temp2.put("GRANDPA_NAME", temp6.get("ORGAN_NAME"));
					
					greatgrandsonList.add(temp2);
				
			
			temp1.put("children", greatgrandsonList);
			temp1List.add(temp1);
		
	
		System.out.println(temp1List);
		System.out.println(1);
		for(Map<String,Object> temp3:DepartmentList) 
			List<Map<String,Object>> grandsonList=new ArrayList<Map<String,Object>>();
			grandsonList.clear();
			for(Map<String,Object> temp4:PostList) 
				if(temp4.get("PARENT_ID").equals(temp3.get("ORGAN_ID"))) 
					temp4.put("name",temp4.get("ORGAN_NAME"));
					temp4.put("PARENT_NAME", temp3.get("ORGAN_NAME"));
					grandsonList.add(temp4);
				
			
			temp3.put("children", grandsonList);
			//System.out.println(temp3);
			temp3List.add(temp3);
		
		System.out.println(temp3List);
		System.out.println(1);
		for(Map<String,Object> temp5:UnitList) 
			List<Map<String,Object>> sonList=new ArrayList<Map<String,Object>>();
			temp5.put("name",temp5.get("ORGAN_NAME"));
			sonList.clear();
			for(Map<String,Object> temp6:DepartmentList) 
				if(temp6.get("PARENT_ID").equals(temp5.get("ORGAN_ID"))) 
					temp6.put("name",temp6.get("ORGAN_NAME"));
					temp6.put("PARENT_NAME", temp5.get("ORGAN_NAME"));
					sonList.add(temp6);
				
			
			temp5.put("children", sonList);
			//System.out.println(temp5);
			temp5List.add(temp5);
		
		System.out.println(temp5List);
		resList.addAll(temp5List);
		return resList;
	

这个地方有几个点需要注意一下:

1.让他返回成一个父亲节点带着一个子节点的数据格式,要对数据进行一个拼接,返回数据的格式是如下的形式

[STRU_ID=1, ORGAN_ID=1, 
children=[STRU_ID=2, ORGAN_ID=2, 
children=[STRU_ID=3, ORGAN_ID=3, 
children=[STRU_ID=4, GRANDPA_ID=2, ORGAN_ID=4, PARENT_NAME=岗位, name=a, STRU_LEVEL=4, ORGAN_NAME=a, 
PARENT_ID=3, GRANDPA_NAME=2]
]
]
]

 他的下一层规定写为children,这个是Ztree的数据属性,最好写死写成children。

2.在后台拼接的时候,需要给每个节点的name属性附上值

temp5.put("name",temp5.get("ORGAN_NAME"));

  如果不给name赋值,则在前台显示的时候会出现undefined的情况。

3.然后是获取选择节点的属性值的方法,如下:

var selectedNodes = zTreeObj.getCheckedNodes();

  其他的就没什么了,that‘s all,暂时写到这,想起来再补充。

ztree使用实例

一、获取点击选中的值:<linkrel="stylesheet"href="./static/libs/ztree/css/metroStyle/metroStyle.css"type="text/css"><!--ztree--><scriptsrc="./static/libs/ztree/js/jquery.ztree.core-3.5.js"></ 查看详情

使用ztree插件构建树形菜单

zTree下载:https://github.com/zTree/zTree_v3目录:就我看来,zTree较为实用的有以下几点:zTree是一个依靠jQuery实现的多功能“树插件”。优异的性能、灵活的配置、多种功能的组合是zTree最大优点。支持JSON数据支持静态和Ajax异步... 查看详情

ztreejquery-ztree的基本使用

1.zTree的下载地址  https://gitee.com/zTree/zTree_v3  API文档:http://www.treejs.cn/v3/api.php2.引入需要的文件  <scripttype="text/javascript"src="../libs/ztree/jquery.ztree.core.js"></script>  <scriptt 查看详情

004ztree入门-bos

使用标准json数据构造ztree 1.使用标准json构造ztree,children属性用于描述子节点,可以无限嵌套下去 2.name属性用于描述节点名称 3.缺点是结构很混乱,不易修改,代码阅读、维护困难 4.示例代码 <!--展示ztree效果:使用标准json数... 查看详情

ztree使用过程(代码片段)

1、引入ZTree所需要的js和css<scriptsrc="<%=path%>/static/js/jquery.ztree.core.min.js"type="text/javascript"></script><scriptsrc="<%=path%>/static/js/jquery.ztree.excheck.min.js"type= 查看详情

笔记ztree的使用

引用的js和css:<!--zTreeJS--><scripttype="text/javascript"src="jquery/jquery-1.7.min.js"></script><scripttype="text/javascript"src="zTree/js/jquery.ztree.core-3.2.js"></script> 查看详情

ztree的使用

zTree可以实现树形结构的关系。一般会出现在部门的上下级关系,角色权限的分配等模块中...zTree格式要求:即Json的复杂格式  [{id:"..",pId:"..",name:"..",checked:"true/false"}]id:标识当前的id;pId:父节点的id;name:节点名称(就是在... 查看详情

ztree的简单使用和后台交互的写法

一、引入ztree的头文件<!--引入ztree/--> <scripttype="text/javascript"src="${pageContext.request.contextPath}/lib/ztree/js/jquery-1.8.3.min.js"></script> <scripttype="text/javascript"src="$ 查看详情

ztree介绍及相关属性使用

...能、灵活的配置、多种功能的组合是zTree最大优点。具体使用可查看参考网站:http://www.treejs.cn/v3/demo.php#_101 里面有demo说明和api文档 (http://www.treejs.cn/v3/api.php)使用前 查看详情

$.fn.ztree的使用

如图所示显示效果为树状结构:(jquery.ztree.core-3.5.js)实现:html:<div>  <divclass="foundation-gridTitlehc-title-areano-border-top-left-right">数据分类</div>  <ulid="treeDemo"class="ztree"hr-self-heigh 查看详情

ztree使用,带搜索

/***Createdbyvlsionon2017-10-31*/varsetting={view:{addHoverDom:addHoverDom,removeHoverDom:removeHoverDom,selectedMulti:false},edit:{enable:true,editNameSelectAll:true,showRemoveBtn:true,showRenameBtn: 查看详情

使用两个ztree,调用一个oncheck函数,分别展开不同的节点

问题:在一个页面使用了两个zTree,用选项卡区分,现在要点击节点展示相应的子节点,两个zTree怎么区分?解决方案:1functiononCheck(e,treeId,treeNode){2console.log(treeId);3//清空所有已选人员4$("#yxChk").html("");5zTree=$.fn.zTree.getZTreeObj("treeUs... 查看详情

ztree的使用整理

/**配置:知识点管理*/varsetting={view:{showIcon:false,addDiyDom:addPrevDom,addHoverDom:addHoverDom,removeHoverDom:removeHoverDom,selectedMulti:false},callback:{beforeDrag:beforeDrag,beforeDrop:beforeDrop,befo 查看详情

使用ztree展开节点后,覆盖了下一个节点

如图所示,结果是zTree与<fieldset>标签不兼容。。。。我去!!!也就是说Ztree不能放在<fieldset>标签中。。 查看详情

(十四)角色管理(ztree插件的基本使用)

 1.建表角色表菜单表 角色-菜单表  查看详情

ztree的使用(代码片段)

一、异步加载  functionrenderStationTree()varsetting=view:dblClickExpand:false,async:enable:true,url:"../merchant/getMerchantTree",type:"post",autoParam:["id"],data:key:name:"name",,simpleData:enab 查看详情

ztree入门使用(代码片段)

简单入门使用,熟悉其功能,没有与异步调用后台数据,用的是本地设置的数据。zTree的API:http://www.treejs.cn/v3/api.php 先看效果 目录结构 代码1<!DOCTYPEhtml>2<htmllang="en">3<head>4<metacharset="UTF-8">5<title& 查看详情

ztree使用随笔

  最近开发过程中,需要写一个公司人员组织架构的树状图,后来选用了依赖jQuery的zTree插件来实现,主要是该插件功能齐全,性能稳定,个性化编辑方便,遂选用了这个插件。我记录了一下根据自身需求定制化修改的几项功... 查看详情