Jquery 可拖拽的Ztree(移动,复制)两种选择
首先要引入ztree依赖的js
<link rel="stylesheet" type="text/css" href="<c:url value="/js/common/zTree-v3.5.14/css/zTreeStyle/zTreeStyle.css"/>"/> <script src="<c:url value="/js/common/zTree-v3.5.14/js/jquery.ztree.all-3.5.min.js"/>"<link rel="stylesheet" type="text/css" href="<c:url value="/js/common/bootstrap-2.3.2/css/bootstrap.min.css"/>"/><script src="<c:url value="/js/common/bootstrap-2.3.2/js/bootstrap.min.js"/>" type="text/javascript"></script><script src="<c:url value="/js/common/jquery/jquery-1.8.2.min.js"/>" type="text/javascript"></script>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
只贴关键代码吧,自己把有用的属性全部打印出来了,也加了不少注释。
$.fn.zTree.init($("#ztree"), { data: { simpleData: { enable: true } }, view:{ selectedMulti :false }, edit: { //此属性添加后,树才可以被拖拽 enable: true, showRemoveBtn: false, showRenameBtn: false, drag: { isCopy: true, isMove: true, prev: true, next: true, inner: true } }, callback: { onClick: function(event, treeId, treeNode, clickFlag) { switch (treeNode.gradeType) { case "db": clickCatgryNode(treeNode.id); break; case "c": clickCatgryNode(treeNode.id); break; case "t": clickTabNode(treeNode.id,false); break; default: break; } }, beforeDrag: function(treeId, treeNodes){ console.log("开启拖拽"); return true; }, beforeDrop: function(treeId, treeNodes, targetNode, moveType, isCopy){ console.log("可以拖拽"); //console.log(treeId); //console.log(treeNodes); console.log(treeNodes); //console.log(targetNode); console.log("【源节点】节点id:"+treeNodes[0].id+" 父节点id:"+treeNodes[0].pId+" 级层:"+treeNodes[0].level+" 名称:"+treeNodes[0].name); //如果拖拽的是目录 if(treeNodes[0].isParent){ $.each(treeNodes[0].children,function(i,treeNode){ console.log("【源节点】子节点"+i+":"+treeNode.id+" 父节点id:"+treeNode.pId+" 级层:"+treeNode.level+" 名称:"+treeNode.name); }); } console.log("【目标节点】 节点id:"+targetNode.id+" 父节点id:"+targetNode.pId+" 级层:"+targetNode.level+" 名称:"+targetNode.name); //console.log("treeId:"+treeId+"--treeNodes:"+treeNodes+"--targetNode:"+targetNode+"--moveType:"+moveType+"--isCopy:"+isCopy); //库名不允许拖拽 if(treeNodes[0].level==0){ alert("不允许拖拽库节点"); return false; } //不允许拖拽到表节点下(如果树状图中有空目录,那还是需要在后台进行校验该节点是否是表节点) if(!targetNode.isParent){ alert("不允许拖拽任何节点到表节点下"); return false; } return true; }, beforeDragOpen: function(){ console.log("自动展开目录"); return true; }, onDrag: function(){ console.log("拖拽中"); return true; }, onDrop: function(event, treeId, treeNodes, targetNode, moveType, isCopy){ console.log("拖拽完毕"); //console.log(treeId); //console.log(treeNodes); //console.log(targetNode); console.log("【源节点】节点id:"+treeNodes[0].id+" 父节点id:"+treeNodes[0].pId+" 级层:"+treeNodes[0].level+" 名称:"+treeNodes[0].name); //如果拖拽的是目录 if(treeNodes[0].isParent){ $.each(treeNodes[0].children,function(i,treeNode){ console.log("【源节点】子节点"+i+":"+treeNode.id+" 父节点id:"+treeNode.pId+" 级层:"+treeNode.level+" 名称:"+treeNode.name); }); } console.log("【目标节点】 节点id:"+targetNode.id+" 父节点id:"+targetNode.pId+" 级层:"+targetNode.level+" 名称:"+targetNode.name); //console.log("event:"+event+"--treeId:"+treeId+"--treeNodes:"+treeNodes+"--targetNode:"+targetNode+"--moveType:"+moveType+"--isCopy:"+isCopy); return true; }, onExpand: function(){ console.log("获得被展开的节点信息"); return true; } } }, zNodes);
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow
Jquery 可拖拽的Ztree(移动,复制)两种选择相关推荐
- jquery gridly (拖拽插件)
Jquery Gridly 在项目中的使用 1.引入 js 和 css 两个文件,项目中位置如下 /erptheme/jqueryGridly/jquery.gridly.js/erptheme/jq ...
- jquery ui 拖拽
Query UI是JQuery官方支持的WebUI 代码库,包含底层交互.动画.特效等API,并且封装了一些Web小部件(Widget).同时,JQuery UI继承了jquery的插件支持,有大量的 ...
- jQuery UI 拖拽功能
原文地址:http://www.cnblogs.com/holbrook/archive/2012/03/13/2394111.html JQuery UI是JQuery官方支持的WebUI 代码库, ...
- JQuery UI 拖拽排序
html代码: <div class="sortable"><div class="item"><img src="im ...
- jQuery 鼠标拖拽移动窗口
拖拽移动需要注意的是:拖拽移动的窗口是如何定位的,如果"left"属性为"%" ,以"margin-left"来计算定位,如下实例,如果&q ...
- vue——js实现图片/文件的拖拽上传(复制粘贴就能用,还有优化空间)
首先先创建元素容器 <template><div id="drop"><span v-show="isUpload" class= ...
- macbook触摸板拖拽不好用?复制选中难?教你两个设置,从此告别鼠标
触控板设置 点击设置–触控板–更多手势,像下面这样设置 辅助功能设置 点击设置–辅助功能–左边下拉找到指针控制–触控板选项 启用三指拖拽 以后选中与拖拽只需要三指操作,再也不需要点按了,从此告别鼠标, ...
- jquery.ui.draggable中文文档jquery 自由拖拽类~study~
为什么80%的码农都做不了架构师?>>> JQuery UI Draggable插件用来使选中的元素可以通过鼠标拖动. Draggable的元素受影响css: ui-dragg ...
- 怎样用Jquery实现拖拽层,并实现网站自定义化模块功能?
来源:http://www.oophp.cn/article/view/id/371 现在的网站...很多模块化的东西..都希望实现可视化的操作..主要原因是为了提高用户体验.增强用户的粘合度.当然这 ...
最新文章
- Redis主从复制配置
- CSS的特性之层叠性介绍
- spark入门_入门必读 | Spark 论文导读
- Android调用系统拍照裁剪和选图功能
- SQL 2000 中如何 纵表变横表
- 深度学习 - MPII Human Pose Database数据集下载
- BZOJ5336 TJOI2018 party 【状压DP】*
- Android 学习笔记【基础扫盲篇】
- qtscrcpy自定义按键_操作更简单的QtScrcpy
- ENVI 自带的6种遥感图像分类算法比较
- 读取xml数据装配到字典中之应用场景
- bigdecimal 保留两位小数_五年级数学知识点总结-02小数的除法
- java 8下载_java8下载-java8 64位官方版下载最新免费版-乡巴佬
- 【白板动画制作软件】万彩手影大师教程 | 分享在线视频
- 计算机键盘能直接接手机吗,手机变电脑!智能手机外接键盘和鼠标的3种方法...
- 稽首文殊,寒山之士;南无普…
- 三星Galaxy十周年,它给了你一款能买到的折叠手机
- Java 时间相关 获取某月的某一天
- 用python写字动画_Duang!用Python来实现唱歌、跳舞、写字、画画?无所不能的pyt
- 区块链学习—通证经济学的诺奖理论基础
热门文章
- aBey区块链联合创始人Ciprian Pungila博士在2019年马耳他区块链峰会上发表开幕演讲
- 日常用到的开源软件列表
- 广州达内软件有限公司-3G嵌入式开发助教
- 《智慧书》格言11¬20
- 操作系统linux应用试卷,《Linux操作系统应用》试卷5
- 快看,秋天的校园景色是多么美丽
- BBB(BeagleBone Black)硬件配置简介
- 利用pyecharts对JSON数据进行可视化操作
- HTML5期末考核大作业: 网站——美丽家乡 云南民族文化(8页面) ~ 学生DW网页设计作业源码...
- label runat=server