menu.html 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>menu</title>
  6. <link rel="stylesheet" href="../lib/layui-v2.6.3/css/layui.css" media="all">
  7. <link rel="stylesheet" href="../css/public.css" media="all">
  8. <style>
  9. .layui-btn:not(.layui-btn-lg ):not(.layui-btn-sm):not(.layui-btn-xs) {
  10. height: 34px;
  11. line-height: 34px;
  12. padding: 0 8px;
  13. }
  14. </style>
  15. </head>
  16. <body>
  17. <div class="layuimini-container">
  18. <div class="layuimini-main">
  19. <blockquote class="layui-elem-quote">
  20. Layui的树形表格treeTable,支持异步加载(懒加载)、复选框联动、折叠状态记忆。<br>
  21. <a href="https://gitee.com/whvse/treetable-lay" target="_blank" class="layui-btn layui-btn-danger">treetable-lay</a>
  22. </blockquote>
  23. <div>
  24. <div class="layui-btn-group">
  25. <button class="layui-btn" id="btn-expand">全部展开</button>
  26. <button class="layui-btn layui-btn-normal" id="btn-fold">全部折叠</button>
  27. </div>
  28. <table id="munu-table" class="layui-table" lay-filter="munu-table"></table>
  29. </div>
  30. </div>
  31. </div>
  32. <!-- 操作列 -->
  33. <script type="text/html" id="auth-state">
  34. <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
  35. <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
  36. </script>
  37. <script src="../lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
  38. <script src="../js/lay-config.js?v=1.0.4" charset="utf-8"></script>
  39. <script>
  40. layui.use(['table', 'treetable'], function () {
  41. var $ = layui.jquery;
  42. var table = layui.table;
  43. var treetable = layui.treetable;
  44. // 渲染表格
  45. layer.load(2);
  46. treetable.render({
  47. treeColIndex: 1,
  48. treeSpid: -1,
  49. treeIdName: 'authorityId',
  50. treePidName: 'parentId',
  51. elem: '#munu-table',
  52. url: '../api/menus.json',
  53. page: false,
  54. cols: [[
  55. {type: 'numbers'},
  56. {field: 'authorityName', minWidth: 200, title: '权限名称'},
  57. {field: 'authority', title: '权限标识'},
  58. {field: 'menuUrl', title: '菜单url'},
  59. {field: 'orderNumber', width: 80, align: 'center', title: '排序号'},
  60. {
  61. field: 'isMenu', width: 80, align: 'center', templet: function (d) {
  62. if (d.isMenu == 1) {
  63. return '<span class="layui-badge layui-bg-gray">按钮</span>';
  64. }
  65. if (d.parentId == -1) {
  66. return '<span class="layui-badge layui-bg-blue">目录</span>';
  67. } else {
  68. return '<span class="layui-badge-rim">菜单</span>';
  69. }
  70. }, title: '类型'
  71. },
  72. {templet: '#auth-state', width: 120, align: 'center', title: '操作'}
  73. ]],
  74. done: function () {
  75. layer.closeAll('loading');
  76. }
  77. });
  78. $('#btn-expand').click(function () {
  79. treetable.expandAll('#munu-table');
  80. });
  81. $('#btn-fold').click(function () {
  82. treetable.foldAll('#munu-table');
  83. });
  84. //监听工具条
  85. table.on('tool(munu-table)', function (obj) {
  86. var data = obj.data;
  87. var layEvent = obj.event;
  88. if (layEvent === 'del') {
  89. layer.msg('删除' + data.id);
  90. } else if (layEvent === 'edit') {
  91. layer.msg('修改' + data.id);
  92. }
  93. });
  94. });
  95. </script>
  96. </body>
  97. </html>