龙行博客

走路看风景,经历看人生,岁月留痕迹,人生留轨迹,17的历史,18的豪情,时间的匆忙,人生的风景,放开心胸往前走,成功再远行,放开理想往前走,梦想再行动。
现在位置:首页 > 编程语言 > web前端 > layui树形表格treeTable,目前看到最牛的

layui树形表格treeTable,目前看到最牛的

龙行    web前端    2018-10-24    3125    2评论    本文已被百度收录点击查看详情

treetable

treetable-lay

在layui数据表格之上进行扩展实现

2.使用方法

2.1.引入模块

下载module/treetable-lay整个文件夹,放在你的项目里面,然后使用模块加载的方式使用:

layui.config({
    base: 'module/'
}).extend({
    treetable: 'treetable-lay/treetable'
}).use(['treetable'], function () {
    var treetable = layui.treetable;
});

2.2.渲染表格

<table id="table1" class="layui-table" lay-filter="table1"></table>

<script>
layui.use(['treetable'], function () {
    var treetable = layui.treetable;
    
    // 渲染表格
    treetable.render({
        treeColIndex: 2,          // treetable新增参数
        treeSpid: -1,             // treetable新增参数
        treeIdName: 'd_id',       // treetable新增参数
        treePidName: 'd_pid',     // treetable新增参数
        treeDefaultClose: true,   // treetable新增参数
        treeLinkage: true,        // treetable新增参数
        elem: '#table1',
        url: 'json/data1.json',
        cols: [[
            {type: 'numbers'},
            {field: 'id', title: 'id'},
            {field: 'name', title: 'name'},
            {field: 'sex', title: 'sex'},
            {field: 'pid', title: 'pid'},
        ]]
    });
});
</script>
注意:
可以使用url传递数据,也可以使用data传递数据,如果使用url传递数据,参数是where字段, 跟layui数据表格的使用方式一致。

数据格式

总而言之就是以id、pid的形式,不是以subMenus的形式,当然id、pid这两个字段的名称可以自定义:

{
  "code": 0,
  "msg": "ok",
  "data": [{
      "id": 1,
      "name": "xx",
      "sex": "male",
      "pid": -1
    },{
      "id": 2,
      "name": "xx",
      "sex": "male",
      "pid": 1
    }
  ]
}

2.3.参数说明

layui数据表格的所有参数都可以用,除此之外treetable新增的参数有:

2.3.参数说明

layui数据表格的所有参数都可以用,除此之外treetable新增的参数有:

参数 类型 是否必填 描述
treeColIndex int 树形图标显示在第几列
treeSpid object 最上级的父级id
treeIdName string id字段的名称
treePidName string pid字段的名称
treeDefaultClose boolean 是否默认折叠
treeLinkage boolean 父级展开时是否自动展开所有子级

treeColIndex

树形图标(箭头和文件夹、文件的图标)显示在第几列, 索引值是cols数组的下标。

treeSpid

最上级的父级id,比如你可以规定pid为0或-1的是最顶级的目录。

treeIdName

treetable是以id和pid字段来渲染树形结构的,如果你的数据没有id和pid字段,你可以指定id和pid字段的名称。

treePidName

pid在你的数据字段中的名称。

treeDefaultClose

默认是全部展开的,如果需要默认全部关闭,加上treeDefaultClose:true即可。

treeLinkage

父级展开时是否自动展开所有子级

2.4.注意事项

  • 不能使用分页功能,即使写了page:true,也会忽略该参数。

  • 不能使用排序功能,不要开启排序功能。

  • table.reload()不能实现刷新,请参考demo的刷新。

  • 除了文档上写的treetable.xxx的方法之外,其他数据表格的方法都使用table.xxx。

  • 建议删除和修改请求完后台之后请刷新(重新渲染)表格,最好不要使用obj.delete方式删除。

2.5.其他方法

全部展开

treetable.expandAll('#table1'); 

全部折叠

treetable.foldAll('#table1');

2.6.如何修改图标

通过css来修改图标,content是图标的unicode字符。

修改文件夹图标:

/** 未展开 */ .treeTable-icon .layui-icon-layer:before { content: "\e638"; } /** 展开 */ .treeTable-icon.open .layui-icon-layer:before { content: "\e638"; } 

修改文件图标:

.treeTable-icon .layui-icon-file:before { content: "\e621"; } 

修改箭头的图标:

/** 未展开 */ .treeTable-icon .layui-icon-triangle-d:before { content: "\e623"; } /** 展开 */ .treeTable-icon.open .layui-icon-triangle-d:before { content: "\e625"; }
评论一下 分享本文 赞助站长

赞助站长X

扫码赞助站长
联系站长
龙行博客
  • 版权申明:此文如未标注转载均为本站原创,自由转载请表明出处《龙行博客》。
  • 本文网址:https://www.liaotaoo.cn/49.html
  • 上篇文章:5个javascript(es6)更好的条件语句写法
  • 下篇文章:如何使用js判断是PC端还是移动端
  • php treeTable
挤眼 亲亲 咆哮 开心 想想 可怜 糗大了 委屈 哈哈 小声点 右哼哼 左哼哼 疑问 坏笑 赚钱啦 悲伤 耍酷 勾引 厉害 握手 耶 嘻嘻 害羞 鼓掌 馋嘴 抓狂 抱抱 围观 威武 给力
提交评论

清空信息
关闭评论
萧瑟
萧瑟2018-10-25 10:37回复
#1
layui还是有一些坑的,他的弹窗效果好一些。
龙行
龙行2018-10-25 14:57回复
@萧瑟:嗯,是的,弹层一直用的layer
快捷导航
联系博主
在线壁纸
给我留言
光羽影视
音乐欣赏
返回顶部