【jquery】【ztree】节点添加自定义按钮、编辑和删除事件改成自己定义事件
setting添加
edit: {
drag: {
isCopy: false,
isMove: true
},
enable: true,//设置是否处于编辑状态
showRemoveBtn: showRemoveAndRenameBtn,
showRenameBtn: showRemoveAndRenameBtn,
removeTitle: "删除",
renameTitle: "修改"
},
view: {
dblClickExpand: false,
showLine: false,
addHoverDom: addHoverDom, // 用于当鼠标移动到节点上时,显示用户自定义控件,显示隐藏状态同 zTree 内部的编辑、删除按钮
removeHoverDom: removeHoverDom, // 用于当鼠标移出节点时,隐藏用户自定义控件,显示隐藏状态同 zTree 内部的编辑、删除按钮
selectedMulti: false
},
callback: {
onClick: archiveTypeTreeClick,
beforeRemove: deleteNodeBefore, //节点被删除之前的事件,并且根据返回值确定是否允许删除操作
beforeEditName: zTreeBeforeEditName //节点被编辑之前的事件,并且根据返回值确定是否允许编辑操作
}
显示编辑和删除过滤,也可以分开来
function showRemoveAndRenameBtn(treeId, treeNode) {
if (treeNode不现实编辑和删除条件) {
// 不显示编辑和删除按钮
return false;
} else {
return true;
}
}
图示
显示编辑和删除时

不显示编辑和删除时

鼠标移动在节点上添加【添加事件按钮】
function addHoverDom(treeId, treeNode) {
//设置只有父节点可以新增 其它只能编辑
if (treeNode需要添加事件的条件) {
treeId = $("#" + treeNode.tId + "_span");
treeNode.editNameFlag || 0 < $("#addBtn_" + treeNode.tId).length || (treeId.after("<span class='button add' id='addBtn_" + treeNode.tId + "' title='新增' ></span>"), (treeNode = $("#addBtn_" + treeNode.tId)) && treeNode.bind("click", function () {
这里是点击添加事件调用();
return true;
}))
}
}
图示
显示添加按钮

鼠标移走后删除添加的事件
function removeHoverDom(treeId, treeNode) {
$("#addBtn_" + treeNode.tId).unbind().remove();
}
图示
移走删除添加按钮

删除节点事件修改成触发自定义事件,返回false是阻止删除节点事件
参考官网:http://www.treejs.cn/v3/api.php 方法setting.callback.beforeEditName
function deleteNodeBefore(treeId, treeNode) {
if (不显示删除事件的条件) {
// 不做处理
return false;
}
这里是自定义事件();
return false;
}
编辑节点事件修改成触发自定义事件,返回false是不触发原来ztree编辑节点名称事件
参考官网:http://www.treejs.cn/v3/api.php 方法setting.callback.beforeRemove
function zTreeBeforeEditName(treeId, treeNode) {
if (不显示编辑事件的条件) {
// 不做处理
return false;
}
这里是自定义事件();
return false;
}
【jquery】【ztree】节点添加自定义按钮、编辑和删除事件改成自己定义事件的更多相关文章
- Ztree节点前加上两个自定义按钮
前言: 在我的权限管理模块遇到了给某些角色加权限的问题,这时就需要实现将每个模块做成树,在每个节点前加上预览和编辑的按钮,这样可以根据数据库的某个字段给每个角色赋权限. 必须必须吐槽的是,这部分的功能 ...
- Jquery zTree实例
zTree[简单介绍] zTree 是利用 JQuery 的核心代码,实现一套能完毕大部分经常使用功能的 Tree 插件 兼容 IE.FireFox.Chrome 等浏览器 在一个页面内可同一时候生成 ...
- bootstrap jQuery Ztree异步载入数据,check选择&可加入、改动、删除节点
效果图: 一.下载zTree插件 地址:http://www.ztree.me 二.html代码 <link href="../Scripts/zTree/css/zTreeStyle ...
- 可编辑ztree节点的增删改功能图标控制---已解决
每文一语:休倚时来势,提防运去时 <!DOCTYPE html> <HTML> <HEAD> <TITLE> ZTREE DEMO - beforeEd ...
- jquery zTree异步搜索的例子--搜全部节点
参考博客: https://segmentfault.com/a/1190000004657854 https://blog.csdn.net/houpengfei111/article/detail ...
- 三.jquery.datatables.js表格编辑与删除
1.为了使用如图效果(即将按钮放入行内http://www.datatables.net/examples/ajax/null_data_source.html) 采用了另一个数据格式 2.后台php ...
- 项目一:项目第二天 Jquery ztree使用展示菜单数据 2、 基础设置需求分析 3、 搭建项目框架环境--ssh(复习) 4、 SpringData-JPA持久层入门案例(重点) 5、 Easyui menubutton菜单按钮使用 6、 Easyui messager消息框使用
1. Jquery ztree使用展示菜单数据 2. 基础设置需求分析 3. 搭建项目框架环境--ssh(复习) 4. SpringData-JPA持久层入门案例(重点) 5. Easyui menu ...
- Query节点操作,jQuery插入节点,jQuery删除节点,jQuery Dom操作
一.创建节点 var box = $('<div>节点</div>'); //创建一个节点,或者var box = "<div>节点</div> ...
- jquery zTree 查找所有的叶子节点
jquery zTree 查找所有的叶子节点 // 保存所有叶子节点 10 为初始化大小,并非数组上限 var arrayObj = new Array([10]); /* treeNode: 根节点 ...
随机推荐
- python 查询文件存放地址
import os, time import sys import re def search(path,name): for root, dirs, files in os.walk(path): ...
- Go语言 - 结构体 | 方法
自定义类型和类型别名 自定义类型 在Go语言中有一些基本的数据类型,如string.整型.浮点型.布尔等数据类型, Go语言中可以使用type关键字来定义自定义类型. 自定义类型是定义了一个全新的类型 ...
- mysql和sqliet连接
Python里Django框架数据库要配置1.setting已经自己配置好2.需要自己连接.找到setting里DATABASES进行连接自己数据库MySQL数据库连接 model里创建数据表就是Dj ...
- Bzoj 3343: 教主的魔法(分块+二分答案)
3343: 教主的魔法 Time Limit: 10 Sec Memory Limit: 256 MB Description 教主最近学会了一种神奇的魔法,能够使人长高.于是他准备演示给XMYZ信息 ...
- 【ARC098F】Donation
[ARC098F]Donation 题面 atcoder 题意: 给定一张\(n\)个点,\(m\)条边的无向图.这张图的每个点有两个权值 \(a_i,b_i\). 你将会从这张图中选出一个点作为起点 ...
- 使用kubectl访问kubernetes集群
之前访问k8s都是通过token进去dashboard,如下所示.但是现在希望通过kubectl访问k8s,所以还需要进一步的配置. 1. 安装kubectl命令行工具,配置环境变量,环境变量的值指向 ...
- proxmox之cloud-init
Cloud-Init支持 Cloud-Init是事实上的多分发包,它处理虚拟机实例的早期初始化.使用Cloud-Init,可以在虚拟机管理程序端配置网络设备和ssh密钥.当VM首次启动时,VM内的Cl ...
- [Gamma阶段]第十次Scrum Meeting
Scrum Meeting博客目录 [Gamma阶段]第十次Scrum Meeting 基本信息 名称 时间 地点 时长 第十次Scrum Meeting 19/06/06 大运村寝室6楼 30min ...
- elasticsearch-py 解决 too_long_frame_exception 问题
elasticsearch-py 解决 too_long_frame_exception 问题 老大让我搞一搞数据统计,配环境时遇到个奇葩错误,记录一下,希望能帮助到某些人. 我需要安装 Elasti ...
- 完全卸载Oracle(亲身体验完整版)
完全卸载Oracle 用Oracle自带的卸载程序不能从根本上卸载Oracle,从而为下次的安装留下隐患,那么怎么才能完全卸载Oracle呢? 那就是直接注册表清除,步骤如下: 开始->设置-& ...