美文网首页
表格工具栏

表格工具栏

作者: 云三木 | 来源:发表于2020-07-23 17:05 被阅读0次

最近通过方法渲染去加载表格数据的时候,遇到一个问题,表格操作栏的按钮怎么去显示?

加载表格数据

头部工具栏配置toolbar参数,行内工具栏配置cols => toolbar,参数值为模板的id;模板在script内定义。

  table.render({
    elem: '#test'
    ,url:'/test/table/demo1.json'
    ,toolbar: '#toolbarDemo' //开启头部工具栏,并为其绑定左侧模板
    ,defaultToolbar: ['filter', 'exports', 'print', { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
      title: '提示'
      ,layEvent: 'LAYTABLE_TIPS'
      ,icon: 'layui-icon-tips'
    }]
    ,title: '用户数据表'
    ,cols: [[
      {type: 'checkbox', fixed: 'left'}
      ,{field:'id', title:'ID', width:80, fixed: 'left', unresize: true, sort: true}
      ,{field:'username', title:'用户名', width:120, edit: 'text'}
      ,{field:'email', title:'邮箱', width:150, edit: 'text', templet: function(res){
        return '<em>'+ res.email +'</em>'
      }}
      ,{field:'sex', title:'性别', width:80, edit: 'text', sort: true}
      ,{field:'city', title:'城市', width:100}
      ,{field:'sign', title:'签名'}
      ,{field:'experience', title:'积分', width:80, sort: true}
      ,{field:'ip', title:'IP', width:120}
      ,{field:'logins', title:'登入次数', width:100, sort: true}
      ,{field:'joinTime', title:'加入时间', width:120}
      ,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}
    ]]
    ,page: true
  });

头部工具栏

使用toolbar监听表格头部工具栏,test为表格id。

  //头工具栏事件
  table.on('toolbar(test)', function(obj){
    var checkStatus = table.checkStatus(obj.config.id);
    switch(obj.event){
      case 'getCheckData':
        var data = checkStatus.data;
        layer.alert(JSON.stringify(data));
      break;
      case 'getCheckLength':
        var data = checkStatus.data;
        layer.msg('选中了:'+ data.length + ' 个');
      break;
      case 'isAll':
        layer.msg(checkStatus.isAll ? '全选': '未全选');
      break;
      
      //自定义头工具栏右侧图标 - 提示
      case 'LAYTABLE_TIPS':
        layer.alert('这是工具栏右侧自定义的一个图标按钮');
      break;
    };
  });

行内工具栏

在展示按钮的那一列定义模板 toolbar:'#barDemo',使用tool监听行内按钮。其他列内的显示按钮,如状态也都可以在这里监听到。

  //监听行工具事件
  table.on('tool(test)', function(obj){
    var data = obj.data;
    //console.log(obj)
    if(obj.event === 'del'){
      layer.confirm('真的删除行么', function(index){
        obj.del();
        layer.close(index);
      });
    } else if(obj.event === 'edit'){
      layer.prompt({
        formType: 2
        ,value: data.email
      }, function(value, index){
        obj.update({
          email: value
        });
        layer.close(index);
      });
    }
  });

模板

<script type="text/html" id="toolbarDemo">
  <div class="layui-btn-container">
    <button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
    <button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
    <button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>
  </div>
</script>
 
<script type="text/html" id="barDemo">
  <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
  <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>

参考链接:https://www.layui.com/demo/table/toolbar.html

相关文章

  • 表格工具栏

    最近通过方法渲染去加载表格数据的时候,遇到一个问题,表格操作栏的按钮怎么去显示? 加载表格数据 头部工具栏配置to...

  • 电脑十一课

    表格的制作: 一插入表格的方法: 1、单击常用工具栏上的“插入表格"按钮。 2、表格菜单_插入表格_输入所要的列数...

  • Excel超级智能表

    今天学习Excel超级智能表,作出的表格让人赏心悦目! 第一,超智能表格创建:在工具栏中插入 创建表格 (Ctrl...

  • iOS和Android规范解析——工具栏和固定底板

    今天我们来介绍上篇文章中的表格中余下的一个控件:工具栏(toolbars)。工具栏是iOS中的控件,Android...

  • QuillJs扩展使用——富文本编辑支持表格

    quill v1.0 版本不支持插入表格,v2的dev版本支持表格编辑,但目前只能实现在工具栏以外的地方放置按钮,...

  • office2010使用小记(1)

    excel表格添加滚动条 打开excel,文件-->选项-->自定义功能区-->勾选开发工具-->excel工具栏...

  • CAD数据提取方法

    CAD数据提取方法 1.工具栏选择“注释”模块——选择“表格”——点击“数据提取”,弹出“数据提取”操作框弹出“数...

  • 【Excel篇】快速插入“迷你图”

    Excel表格中插入迷你图,实战案例! (备注:基于office2019) 具体操作如下: ①单击单元格→工具栏:...

  • 让表格看起来层次分明,下拉菜单一秒破功,多行多列速变为一列的方法

    ☞一次设置,让表格框线层次分明: 一般制作表格,都是选中区域后,点快速工具栏上的“所有框线”来添加框线的。但这样的...

  • 动态仪表盘制作

    一、多个表格合并。 安装软件:power query 1.数据工具栏⇒新建查询⇒从文件夹⇒文件夹路径⇒销售明细表⇒...

网友评论

      本文标题:表格工具栏

      本文链接:https://www.haomeiwen.com/subject/wjdqcktx.html