学习layui.dtree请前往 http://www.wisdomelon.com/DTreeHelper/

记录一下dtree的自定义扩展toolbar按钮(toolbarExt)

html代码:

  1. <div style="width:40%;display: inline-block">
  2. <table id="LAY-user-back-serconfig" lay-filter="LAY-user-back-serconfig" class="layui-hidden"></table>
  3. </div>

js代码:

  1.  
  1. dtree.render({
    elem: "#LAY-user-back-serconfig",
    data: dataArr, // 使用data加载
    width:'280px',
    height: "543px",
    toolbar: true,
    ficon:"3" / ["0", "6"] / "-1" / ["-1", "2"],
    icon:"3" / ["0", "6"] / "-1" / ["-1", "2"],
    toolbarWay: "follow", // "contextmenu":右键菜单(默认),"fixed":"固定在节点后","follow":"跟随节点动态呈现"
    toolbarShow: []
    ,toolbarFun:{
    loadToolbarBefore: function(buttons, param, $div){
    // console.log(buttons);
    // console.log(param);
    // console.log($div);
    if(param.level == 1){
    buttons.testEdit = "";
    buttons.testDel = "";
    }
    else if(param.level == 3){ // 如果是叶子节点
    buttons.testAdd = ""; // 取消新增功能
    }
    return buttons; // 将按钮对象返回
    }
    }
    ,toolbarExt: [
    {
    toolbarId: "testAdd", icon: "dtree-icon-add-circle", title: "新增", handler: function (node, $div) {
    console.log(node.nodeId);
    var content, title, url;
    if (node.level == 1) {
    url = '/monitor/system-info'
    content = './serConfigform.html';
    title = '新增服务资源信息'
    }
    if (node.level == 2) {
    url = '/monitor/service-resources-info'
    content = './serCofigformtwo.html';
    title = '新增服务资源系统信息'
    }
    else if (node.level == 3) {
    return false
    }
    add(node, content, title, url);//调用添加函数
    }
    },
    {
    toolbarId: "testEdit", icon: "dtree-icon-bianji", title: "编辑", handler: function (node, $div) {

    var content, title, url;
    var id = node.nodeId;
    if (node.level == 1) {
    return false
    }
    else if (node.level == 2) {
    url = '/monitor/system-info/';
    content = './serConfigform.html#/id=' + id;
    title = '修改服务资源系统信息';

    } else if (node.level == 3) {
    url = '/monitor/service-resources-info/';
    content = './serCofigformtwo.html#/id=' + id
    title = '修改服务资源信息'
    }
    update(node, content, title, url);//调用更新函数
    }
    },
    {
    toolbarId: "testDel",
    icon: "dtree-icon-roundclose",
    title: "删除",
    handler: function (node, $div) {
    var url;
    if (node.level == 1) {
    return false
    }
    else if (node.level == 2) {
    url = "/monitor/system-info/";
    } else if (node.level == 3) {
    url = "/monitor/service-resources-info/"
    }
    del(node, url);//调用删除函数
    // DTree5.partialRefreshDel($div); // 这样即可删除节点
    }
    }]

    });

    渲染之后的效果图,规定一级节点只能添加,二级节点可以增、删、改,三级节点可以删除、修改,不能添加。
  1. 通过toolbarFun来控制返回的toolbar按钮


layui.dtree的学习,自定义扩展toolbar按钮(toolbarExt)的更多相关文章

  1. Layui数据表格加入自定义扩展方法(重新渲染Render当前页数据)

    具体开发中遇到的问题如下, 数据表格的重新渲染或重新加载会导致当前操作的分页 或 配置被清空.我正在操作第5页,重新渲染后就回到了最原始第1页. 需要达到的效果是: 不调用接口,仅仅只是从table. ...

  2. Silverlight实例教程 - 自定义扩展Validation类,验证框架的总结和建议(转载)

    Silverlight 4 Validation验证实例系列 Silverlight实例教程 - Validation数据验证开篇 Silverlight实例教程 - Validation数据验证基础 ...

  3. asp.net学习之扩展GridView

    原文:asp.net学习之扩展GridView 本节讨论如何从现有的控件,进而扩展成强大的,更定制的GridView控件 1.扩展BoundField 默认的BoundField不能显示多文本,文字一 ...

  4. 代码走查25条疑问 C# 跳转新的标签页 C#线程处理 .Net 特性 attribute 学习 ----自定义特性 看懂 ,学会 .NET 事件的正确姿势-简单版

    代码走查25条疑问   代码走查(Code Review) 是一个开发人员与架构师集中讨论代码的过程.通过代码走查可以提高代码的 质量,同时减少Bug出现的几率.但是在小公司中并没有代码走查的过程在这 ...

  5. 第一步 使用sencha touch cmd 4.0 创建项目、打包(加入全局变量、公用类、自定义扩展、资源文件)

    参考资料: http://www.cnblogs.com/qqloving/archive/2013/04/25/3043606.html http://www.admin10000.com/docu ...

  6. WCF自定义扩展,以实现aop!

    引用地址:https://msdn.microsoft.com/zh-cn/magazine/cc163302.aspx  使用自定义行为扩展 WCF Aaron Skonnard 代码下载位置: S ...

  7. Jquery自定义扩展方法(二)--HTML日历控件

    一.概述 研究了上节的Jquery自定义扩展方法,自己一直想做用jquery写一个小的插件,工作中也用到了用JQuery的日历插件,自己琢磨着去造个轮子--HTML5手机网页日历控件,废话不多说,先看 ...

  8. iOS自定义的UISwitch按钮

    UISwitch开关控件 开关代替了点选框.开关是到目前为止用起来最简单的控件,不过仍然可以作一定程度的定制化. 一.创建 UISwitch* mySwitch = [[ UISwitchalloc] ...

  9. bootstrap基础学习【菜单、按钮、导航】(四)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. iOS学习系列 - 扩展机制category与associative

    iOS学习系列 - 扩展机制category与associative category与associative作为objective-c的扩展机制的两个特性,category即类型,可以通过它来扩展方 ...

随机推荐

  1. Dockerfile CMD命令提示no such file

    过程: 自制一个kafka镜像,启动时CMD命令报ERROR # 安装 kafka ADD kafka_2.12-2.4.1.tgz /home/pmish/software ENV KAFKA_HO ...

  2. Oracle View的 WITH READ ONLY 參數有什麼用途?

    限制此視圖只能select,不能進行DML(update,delete,insert)操作,可以保護源表的數據不被改動. CREATE VIEW XXXXX_V AS select XXX,XXX1, ...

  3. wpf treeview 选中节点加载数据并绑定

    <TreeView Grid.Row="0" Grid.Column="0" x:Name="FolderView" Canvas.T ...

  4. Java常用数据结构

    1.数组 数组(Array) 是一种很常见的数据结构.它由相同类型的元素(element)组成,并且是使用一块连续的内存来存储. 我们直接可以利用元素的索引(index)可以计算出该元素对应的存储地址 ...

  5. VS不能生成moc_XXX文件的问题解决

    环境:VS2010 + QT 4.8 问题:写好QT代码文件(XXX.h和XXX.cpp)后,发现不能像其它QT文件那样自动生成moc_XXX文件. 解决: 1.参考网文,将XXX.h文件的属性配置成 ...

  6. 【1】java之类与对象

    一.前言 面向对象就是一种组件化的设计思想. 面向对象特性 封装性:保护内部的定义结构安全性: 继承性:在已有的程序结构上继续扩充新的功能: 多态性:在某一个概念范围内的满足. 二.类与对象的定义和使 ...

  7. 【剑指Offer】【链表】链表中倒数第k个结点

    题目:输入一个链表,输出该链表中倒数第k个结点. A1:先从头到尾扫描链表,得到链表的总长度n,然后再扫描一次链表,输出n-k+1处的结点  ===> 测试用例超时 A2:创建两个指针,一个遍历 ...

  8. mac系统yarn使用报错:ERROR: add is not COMMAND nor fully qualified CLASSNAME.

    出现错误的过程: mac 系统上使用阿里的X6(@antv/x6) x6 快速上手: 1   npm install @antv/x6 --save 2   yarn add @antv/x6     ...

  9. ORACLE备份脚本(3-RMAN0级全备)

    创建目录 mkdir  -p  /bak/level0 mkdir  -p  /bak/arch chown -R oracle:oinstall  /bak/ vi  rmanlevel0.sh # ...

  10. 1.JavaScript的实现与由来

    1.一个JavaScript由不同的部分组成 核心(ECMAScript)以下简称ES 文档对象模型(DOM) 浏览器对象模型(BOM) ES就是JavaScript的语法层面 而DOM则是浏览器解释 ...