文档章节

jQuery ztree组件

孟飞阳
 孟飞阳
发布于 2017/09/03 23:50
字数 857
阅读 37
收藏 0
点赞 0
评论 0

<!DOCTYPE html>
<HTML>
<HEAD>
    <TITLE> ZTREE DEMO - Simple Data</TITLE>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
	
    <link rel="stylesheet" href="css/bootstrapStyle/bootstrapStyle.css" type="text/css">
	
    <script type="text/javascript" src="js/jquery.min.js"></script>
    <script type="text/javascript" src="js/jquery.ztree.core.js"></script>
    <script type="text/javascript" src="js/jquery.ztree.excheck.js"></script>
    <script type="text/javascript" src="js/jquery.ztree.exedit.js"></script>
    <SCRIPT type="text/javascript">
        <!--
        var setting = {
            view: {
                addHoverDom: addHoverDom,
                removeHoverDom: removeHoverDom,
                selectedMulti: false
            },
            check: {
                enable: true
            },
            data: {
                simpleData: {
                    enable: true
                }
            },
            edit: {
                enable: true
            }
        };

        var zNodes =[
            {id:1, pId:0, name:"[core] 基本功能 演示", open:true},
		{id:101, pId:1, name:"最简单的树 --  标准 JSON 数据"},
		{id:102, pId:1, name:"最简单的树 --  简单 JSON 数据"},
		{id:103, pId:1, name:"不显示 连接线"},
		{id:104, pId:1, name:"不显示 节点 图标"},
		{id:108, pId:1, name:"异步加载 节点数据"},
		{id:109, pId:1, name:"用 zTree 方法 异步加载 节点数据"},
		{id:110, pId:1, name:"用 zTree 方法 更新 节点数据"},
		{id:111, pId:1, name:"单击 节点 控制"},
		{id:112, pId:1, name:"展开 / 折叠 父节点 控制"},
		{id:113, pId:1, name:"根据 参数 查找 节点"},
		{id:114, pId:1, name:"其他 鼠标 事件监听"},

		{id:2, pId:0, name:"[excheck] 复/单选框功能 演示", open:false},
		{id:201, pId:2, name:"Checkbox 勾选操作"},
		{id:206, pId:2, name:"Checkbox nocheck 演示"},
		{id:207, pId:2, name:"Checkbox chkDisabled 演示"},
		{id:208, pId:2, name:"Checkbox halfCheck 演示"},
		{id:202, pId:2, name:"Checkbox 勾选统计"},
		{id:203, pId:2, name:"用 zTree 方法 勾选 Checkbox"},
		{id:204, pId:2, name:"Radio 勾选操作"},
		{id:209, pId:2, name:"Radio nocheck 演示"},
		{id:210, pId:2, name:"Radio chkDisabled 演示"},
		{id:211, pId:2, name:"Radio halfCheck 演示"},
		{id:205, pId:2, name:"用 zTree 方法 勾选 Radio"},

		{id:3, pId:0, name:"[exedit] 编辑功能 演示", open:false},
		{id:301, pId:3, name:"拖拽 节点 基本控制"},
		{id:302, pId:3, name:"拖拽 节点 高级控制"},
		{id:303, pId:3, name:"用 zTree 方法 移动 / 复制 节点"},
		{id:304, pId:3, name:"基本 增 / 删 / 改 节点"},
		{id:305, pId:3, name:"高级 增 / 删 / 改 节点"},
		{id:306, pId:3, name:"用 zTree 方法 增 / 删 / 改 节点"},
		{id:307, pId:3, name:"异步加载 & 编辑功能 共存"},
		{id:308, pId:3, name:"多棵树之间 的 数据交互"},

		{id:4, pId:0, name:"大数据量 演示", open:false},
		{id:401, pId:4, name:"一次性加载大数据量"},
		{id:402, pId:4, name:"分批异步加载大数据量"},
		{id:403, pId:4, name:"分批异步加载大数据量"},

		{id:5, pId:0, name:"组合功能 演示", open:false},
		{id:501, pId:5, name:"冻结根节点"},
		{id:502, pId:5, name:"单击展开/折叠节点"},
		{id:503, pId:5, name:"保持展开单一路径"},
		{id:504, pId:5, name:"添加 自定义控件"},
		{id:505, pId:5, name:"checkbox / radio 共存"},
		{id:506, pId:5, name:"左侧菜单"},
		{id:507, pId:5, name:"下拉菜单"},
		{id:509, pId:5, name:"带 checkbox 的多选下拉菜单"},
		{id:510, pId:5, name:"带 radio 的单选下拉菜单"},
		{id:508, pId:5, name:"右键菜单 的 实现"},
		{id:511, pId:5, name:"与其他 DOM 拖拽互动"},
		{id:512, pId:5, name:"异步加载模式下全部展开"},

		{id:6, pId:0, name:"其他扩展功能 演示", open:false},
		{id:601, pId:6, name:"隐藏普通节点"},
		{id:602, pId:6, name:"配合 checkbox 的隐藏"},
		{id:603, pId:6, name:"配合 radio 的隐藏"}
        ];

        $(document).ready(function(){
            $.fn.zTree.init($("#treeDemo"), setting, zNodes);
        });

        var newCount = 1;
        function addHoverDom(treeId, treeNode) {
            var sObj = $("#" + treeNode.tId + "_span");
            if (treeNode.editNameFlag || $("#addBtn_"+treeNode.tId).length>0) return;
            var addStr = "<span class='button add' id='addBtn_" + treeNode.tId
                + "' title='add node' onfocus='this.blur();'></span>";
            sObj.after(addStr);
            var btn = $("#addBtn_"+treeNode.tId);
            if (btn) btn.bind("click", function(){
                var zTree = $.fn.zTree.getZTreeObj("treeDemo");
                zTree.addNodes(treeNode, {id:(100 + newCount), pId:treeNode.id, name:"new node" + (newCount++)});
                return false;
            });
        };
        function removeHoverDom(treeId, treeNode) {
            $("#addBtn_"+treeNode.tId).unbind().remove();
        };
        //-->
    </SCRIPT>
</HEAD>

<BODY>
<h1>zTree - bootstrap 风格</h1>
<ul id="treeDemo" class="ztree"></ul>
</BODY>
</HTML>

效果:

© 著作权归作者所有

共有 人打赏支持
孟飞阳
粉丝 202
博文 895
码字总数 531335
作品 5
朝阳
个人站长
简单灵活的 Java CMS - EasyCms

简介 Java EasyCms 使用最简单性能最高的框架,将cms系统简单到极致,灵活的栏目扩展,快速的构建普通网站 生成的静态演示站(测试): www.j4cms.com 用到的框架工具 java,servlet,guice...

姜小北 ⋅ 2017/08/02 ⋅ 0

cjbi/wetech-admin

Wetech-Admin Wetech-Admin 是基于Maven+Spring+SpringMVC+Mybatis的轻量级后台管理系统,适用于中小型项目的管理后台,支持按钮级别的权限控制,系统具有最基本的用户管理、角色管理、资源管...

cjbi ⋅ 04/20 ⋅ 0

huangdf/seezoon-framework-all

项目介绍 基于spring,mybatis,shiro面向接口开发的的一套后台管理系统,方便快速开发;采用常用的技术栈,降低学习成本,项目完全前后端分离,后端定义统一的接口格式,统一参数校验,统一权...

huangdf ⋅ 04/20 ⋅ 0

如何去掉ztree的ctrl多选功能

@zTree 你好,想跟你请教个问题: 如何去掉ztree的ctrl多选功能,设置selectMulti: false 也不行

tjane ⋅ 04/20 ⋅ 0

共享定制云平台 - AWCP

AWCP 是一个共享定制云平台,集成了 jflow 工作流引擎,并完成了基于钉钉的开发框架自动生成,可快速搭建基于钉钉管理系统。完成了钉钉端页面配置管理,审核审批,完成了钉钉 PC 端页面配置管...

曹勇 ⋅ 2017/10/23 ⋅ 9

ztree增加子节点造成父节点id错误

ztree:v3.5.35 使用ztree的addNodes 为节点B Ajax动态添加子节点C,添加成功后,再单击节点B,函数获取的节点id为刚才新增节点C的id,不是B的id了. 这个问题哪位知道该怎么解决?...

光石头 ⋅ 06/04 ⋅ 2

权限管理系统 - OpenAuth.Net

项目采用经典DDD架构(用沃恩.弗农大神的话,其实这是DDD-Lite)思想进行开发,简洁而不简单,实用至上,并且所写每一行代码都经过深思熟虑,符合SOLID规则! 当然,如果你想学习完整的DDD框架...

李玉宝 ⋅ 2015/12/04 ⋅ 43

setting.data.key.name与setting.data.key.title在什么场合使用?

@zTree 你好,想跟你请教个问题:setting.data.key.name与setting.data.key.title在什么场合使用?

flowerxuegao ⋅ 06/05 ⋅ 0

【视频分享】尚硅谷Java视频教程_RBAC权限实战视频教程

        本视频讲授RBAC权限模型的设计、以及在项目中的应用 。 1. 使用Maven进行项目构建 。 2. 页面设计采用响应式前端框架BootStrap 。 3. 采用多种方式展现用户数据:树形结构(z...

后端编程嘟 ⋅ 05/24 ⋅ 0

通过treeObj.getCheckedNodes(true);获取选中的结点是如何排除半选状态的节点

@zTree 你好,想跟你请教个问题:通过treeObj.getCheckedNodes(true);获取选中的结点是如何排除半选状态的节点

flowerxuegao ⋅ 06/05 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

如何使用serverchan微信推送告警

之前实现推送告警信息到微信的方法有如下几种: 1、通过企业公众号实现----收费: 2、通过QQ邮箱,在微信平台上开启收到邮件进行提醒; 3、第三方告警平台API,一般也是收费的; 不过最近看文...

问题终结者 ⋅ 27分钟前 ⋅ 0

TCP的RPC

RPC就是远程方法调用(Remote Process Call ),包含了客户端和服务端,涉及了对象的序列化传输。 1.服务端启动,注册远程调用的类2.客户端发送请求信息包含类、方法、参数的一些信息、序列化传...

Cobbage ⋅ 48分钟前 ⋅ 0

IOS-UI UI初步代码布局添加事件

ISO开发界面,UI是必须学习的一部分,其实很早之前想学来了,一直没有沉下心来学习。看到IOS的代码风格和布局就别扭的不行,跟java代码和android布局比较显得不是那么方便,所以一直到现在。...

京一 ⋅ 58分钟前 ⋅ 0

浅谈OpenDaylight的二次开发

OpenDaylight作为一款开源SDN网络控制器,依托于强大的社区支持以及功能特性,成为了目前主流的SDN网络控制器开发平台。在比较稳定的OpenDaylight Helium版本中,已经为开发者提供了大量的网...

wangxuwei ⋅ 今天 ⋅ 0

API 开发中可选择传递 token 接口遇到的一个坑

在做 API 开发时,不可避免会涉及到登录验证,我使用的是jwt-auth 在登录中会经常遇到一个token过期的问题,在config/jwt.php默认设置中,这个过期时间是一个小时,不过为了安全也可以设置更...

等月人 ⋅ 今天 ⋅ 0

Java NIO之文件处理

程序要操作本地操作系统的一个文件,可以分为以下三个部分: 对文件位置的操作 对文件的操作 对文件内容的操作 其中,对文件内容的操作在 Java NIO之Channel 中已经有了介绍,通过FileChann...

士别三日 ⋅ 今天 ⋅ 0

Maven的pom.xml配置文件详解

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.......

小海bug ⋅ 今天 ⋅ 0

解决httpclient超时设置不生效的问题

最近公司有项目需要通过http调用第三方服务,且第三方服务偶有超时,故需要设置一定的超时时间防止不响应的情况出现。 初始设置如下: [java] view plain copy //超时设置 RequestConfig re...

Mr_Tea伯奕 ⋅ 今天 ⋅ 0

过滤器Filter和拦截器HandlerInterceptor

过滤器 依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要...

hutaishi ⋅ 今天 ⋅ 0

Redis入门详解(转)

Redis入门详解 Redis简介 Redis安装 Redis配置 Redis数据类型 Redis功能 持久化 主从复制 事务支持 发布订阅 管道 虚拟内存 Redis性能 Redis部署 Redis应用场景 Redis总结 Redis简介: Redi...

xiaoyaoyoufang ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部