zTree插件的应用
- 需要用到的js和css文件
<link rel="stylesheet" href="__PUBLIC__/zTree/css/demo.css" type="text/css">
<link rel="stylesheet" href="__PUBLIC__/zTree/css/zTreeStyle/zTreeStyle.css" type="text/css">
<link rel="stylesheet" href="__PUBLIC__/ztree/css/metroStyle/metroStyle.css" type="text/css">
<link rel="stylesheet" href="http://apps.bdimg.com/libs/bootstrap/3.3.4/css/bootstrap.css">
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js"></script>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript" src="__PUBLIC__/zTree/js/jquery.ztree.core-3.5.js"></script>
<script type="text/javascript" src="__PUBLIC__/ztree/js/jquery.ztree.excheck-3.5.js"></script>
<script type="text/javascript" src="http://apps.bdimg.com/libs/bootstrap/3.3.4/js/bootstrap.min.js"></script> - 设置ztree在dome中的位置(ul 的class必须为ztree)
<div id="ztreeBodyDiv">
<ul class="ztree" id="myTree"></ul> </div>
生成列表
var _ql_ ={};
_ql_.zTree = null;
function newTree( zNodes ){
var setting = {
keep: {
leaf: true,
parent: true
},
data: {
//数据设置别名,与后台传入的数据对应
simpleData: {
enable: true,
idkey : "id",
pIdKey: "pid"
//rootPId: 0
}
},
//回调函数
callback: {
//onClick: treeOnClick,
onRightClick: treeOnRightClick
}
};
$("#myTree").html('');
//初始化zTree
$.fn.zTree.init($("#myTree"), setting, zNodes);
//获取zTree对象
_ql_.zTree = $.fn.zTree.getZTreeObj("myTree");
}
- post返回后台的数据,并显示列表
function getTreeList(){
var nt = new Date().getTime()
,pobj = { nt: nt }
,url = "{:U('createTree')}"
; (function( fpobj, furl ){
$.post( furl, fpobj, function(json){ newTree( json );
}, 'json' );
})(pobj,url);
}
getTreeList(); - 添加节点
- 可通过_ql_.zTree对象(即生成的列表对象)的getSelectedNodes()方法获取被选节点及其子节点,返回的是array类型,
var nodes = _ql_.zTree.getSelectedNodes();//返回被选节点数据
_ql_['del_seledNode'] = nodes;//用全局对象保存被选节点数据 - 添加节点
var qlas = _ql_['add_seledNode'];
if(pobj["pid"] ===){//判断是否为根节点,后台根节点的id设置为1
//为根节点时,第一个参数是插入节点的父节点的数据,第二个参数是插入节点的数据
var a = _ql_.zTree.addNodes(null,json.data); }else{
//为非跟节点时,第一个参数是插入节点的父节点的数据,第二个参数是插入节点的数据var b =_ql_.zTree.addNodes(qlas[],json.data); }
- 修改节点
- 可通过_ql_.zTree对象(即生成的列表对象)的getSelectedNodes()方法获取被选节点及其子节点,返回的是array类型,
- 修改节点
node.name = json.data;//后台传回修改的数据
_ql_.zTree.updateNode(node);//修改节点名称
- 删除节点
- 可通过_ql_.zTree对象(即生成的列表对象)的getSelectedNodes()方法获取被选节点及其子节点,返回的是array类型,
- 删除节点
var pnode = nodes[].getParentNode();//获取被选节点的父节点数据
//遍历被选节点,及其子节点并删除
for(var i=;i<nodes.length;i++){
_ql_.zTree.removeNode(nodes[i]);
}
//设置可添加子节点
pnode.isParent = true;
//更新被选节点的父节点的数据
_ql_.zTree.updateNode(pnode);
zTree插件的应用的更多相关文章
- ztree插件的使用
在bootstrap中使用ztree插件做树形架构,由于觉得原始的树形不够美观,所以改了其中的css插件 demo演示,以及各种属性的用法网站: http://www.treejs.cn/v3/de ...
- zTree插件之多选下拉菜单代码
zTree插件之多选下拉菜单代码 css和js <!--ztree树结构--> <link rel="stylesheet" type="text/cs ...
- ztree插件(JQuery Tree)
本次使用的ztree插件,基本上所有的需求都能满足,可谓功能强大. * [http://www.ztree.me/v3/api.php zTree v3.0 API 文档] * [http://www ...
- ztree插件异步加载 使用RESTEasy报错 Only resource methods using @FormParam will work as expected. Resource methods consuming the request body by other means will not work as expected.
在使用ztree插件实现异步加载时遇到后台RESTEasy接收参数问题,查看后台报错: A servlet request to the URI http://localhost:8080/area/ ...
- 使用zTree插件构建树形菜单
zTree下载:https://github.com/zTree/zTree_v3 目录: 就我看来,zTree较为实用的有以下几点: zTree 是一个依靠 jQuery 实现的多功能 “树插件”. ...
- jQuery树形菜单,使用zTree插件,异步载入 & 编辑功能&Check 共存
一.下载zTree插件 地址:http://www.ztree.me 二.HTML代码 <%@ Page Language="C#" AutoEventWireup=&quo ...
- jQuery的zTree插件
写在前面 jQuery的 zTree插件 关键代码 <%@ page language="java" contentType="text/html; charset ...
- Ztree插件,定位节点时(focus)不能进入可视区域BUG解决方案
相关插件版本: jquery.ztree.exedit-3.4.js jquery.ztree.all-3.4.js jquery-1.8.0.js function onAsyncSuccess(e ...
- ztree插件的使用及列表项拖拽的实现(jQuery)+异步加载节点数据
为了实现如图所示的树状结构图,并使列表项可拖动到盒子里,研究了ztree这个插件的使用,并仔细研究了列表项的拖动事件.完成了预期需求,对jQuery的运用得到了提高.这个插件的功能非常强大,除了基本的 ...
- PHP + zTree插件树型文件夹显示
zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点.专门适合项目开发,尤其是 树状菜单.树状数据的Web显示.权限管理等等. ...
随机推荐
- 【linux知识】文件存储结构及物理设备命名(FHS)
FHS是文件系统层次化标准(Filesystem Hierarchy Standard). 一切从根目录 " / " 开始. Linux中常见目录及对应内容: 路径分为:绝对路径( ...
- CH-0304 IncDec Sequence
0304 IncDec Sequence 0x00「基本算法」例题 描述 给定一个长度为 n(n≤10^5 ) 的数列 {a_1,a_2,…,a_n},每次可以选择一个区间 [l,r],使下标在这个区 ...
- Gerrit常见命令及最佳实践
概述 本文记录了笔者在使用Gerrit(一种免费.开放源代码的代码审查软件)过程中的一些微小的经验,在这里做个简单的分享. 克隆工程 git clone ssh://tusi@xx.xx.cn:294 ...
- apt-get原理
apt-get 而这个步骤全要用户亲力亲为可能又有些麻烦,懒是科技发展的重要推动力.所以软件厂商自己编译好了很多二进制文件,只要系统和环境对应,下载之后就能直接安装. 但是如果下载了很多软件我想要管理 ...
- SSM整合1(springMVC+mybatis)
整合目标:控制层采用springmvc.持久层使用mybatis实现 整合思路: Dao层: 1.SqlMapConfig.xml,空文件即可,但是需要文件头. 2.applicationContex ...
- js写个小时钟
原生js写个小时钟 一.代码 今天美化博客园自学的哈,分享一下 <!--标题变成时钟--> <div id="Header1_HeaderTitle">&l ...
- echarts背景颜色渐变的三种类型
// 线性渐变,多用于折线柱形图,前四个参数分别是 x0, y0, x2, y2, 范围从 0 - 1,相当于在图形包围盒中的百分比,如果 globalCoord 为 `true`,则该四个值是绝对的 ...
- MSSQL注入:显错注入及反弹注入
前言: MSSQL注入攻击是最为复杂的数据库攻击技术,由于该数据库功能十分强大,存储过程以及函数语句十分丰富,这些灵活的语句造就了新颖独特的攻击思路. MSSQL的显错注入操作: 以联合查询为例: 猜 ...
- 8. java 面向对象
一.面向对象特征 1. 封装 方法就是一种封装 关键字private也是一种封装 封装就是讲一些逻辑细节信息隐藏起来,对于外界不可见:外界只需调用我即可: 一旦使用了private进行修饰,那么本类当 ...
- 对比keep-alive路由缓存设置的2种方式
方式有两种 .路由元信息(2.1.0版本之前) .属性方式(2.1.0版本之后新增) Vue2.1.0之前: 想实现类似的操作,你可以: 配置一下路由元信息 创建两个keep-alive标签 使用v- ...