layui动态加载多表头的实例


Posted in Javascript onSeptember 05, 2019

效果

layui动态加载多表头的实例

layui动态加载多表头的实例

动态生成header

layui动态加载多表头的实例

返回的header数据:格式为数组,因为是二级表头,所以是二元数组

后台动态拼接数组,返回数组后把两个数组push到一个空数组中就可以组成一个动态的多级表头

var header= [];
var header1= [{field: 'merchantName', title: '商户名称', width: 140, rowspan: 2},{field: 'merchantSubName', title: '子商户名称', width: 140, rowspan: 2}];
var header2= [];
$.ajax({
  type: "get",
  url: "",
  data: {id: 1,type:type},
  success: function (data) {
   if (data.code === 0){
    $.each(data.data[0], function (index, obj) {
     header1.push({align: 'center', title: obj, colspan:3});
    });
    $.each(data.data[1], function (index, obj) {
     //拼接成官网所需要的数组
     header2.push({field: obj.field1, title: obj.title1 });
     header2.push({field: obj.field2, title: obj.title2 });
     header2.push({field: obj.field3, title: obj.title3 });
    });
    header.push(header1);
    header.push(header2);
    table.reload('setList', {
     url: '' //数据接口
     , cols: header
    });
    header= [];
    header1= [{field: 'merchantName', title: '商户名称', width: 140, rowspan: 2},{field: 'merchantSubName', title: '子商户名称', width: 140, rowspan: 2}];
    header2= [];
   }
  }
 });
 table.render({
  id: 'setList',
  elem: '#setList'
  , url: '' //数据接口
  , cellMinWidth: 80
  , limit: 10//每页默认数
  , limits: [10, 20, 30, 40, 50, 100]
  , page: { //支持传入 laypage 组件的所有参数(某些参数除外,如:jump/elem) - 详见文档
   layout: ['count', 'prev', 'page', 'next', 'limit', 'refresh', 'skip'] //自定义分页布局
   , curr: 1 //设定初始在第 1 页
  }
  ,where: {
   id:id,
   type:type
  }
  , cols: header
 });

后台动态生成多级表头

public AjaxResult header(@RequestParam Map<String, Object> map) {
  Long id = Long.valueOf((String )map.get("id"));
  String productName = map.get("productName")==null?"":(String)map.get("productName");
  String type = map.get("type")==null?"":(String)map.get("type");

  if("".equals(productName) ){
   if(("0").equals(type)){
    List<ProductInfo> list =statisticsFeign.getProduct();
    productName = list.get(0).getProductName();
   }else{
    Long[] ids =settlementFeign.getMerch(id);
    String mid= org.apache.commons.lang.StringUtils.join(ids, ",");
    List<MerchantProductRate> list =statisticsFeign.getProductByMID(mid);
    productName = list.get(0).getProductName();
   }
  }

  String[] str = productName.split(",");
  List list = new ArrayList();
  List list1 = new ArrayList();
  List list2 = new ArrayList();
  for (int i = 0; i < str.length; i++) {
   list1.add(str[i]);
   list2.add(new Messge("sumTotal"+(i+1),"成功笔数","sumCost"+(i+1),"扣减金额","sumBars"+(i+1),"扣减条数"));
  }
  list.add(list1);
  list.add(list2);
  return new AjaxResult(0,"获取数据成功",list);
 }

表格数据是通过统计得出的数据,统计的数据也是通过循环拼接sql,统计命名要和表头的一致

public class Messge {
 /** 列名1 **/
 private String field1;
 /** 对应说明1(成功笔数) **/
 private String title1;
 /** 列名2 **/
 private String field2;
 /** 对应说明2(扣减金额) **/
 private String title2;
 /** 列名3 **/
 private String field3;
 /** 对应说明3(扣减条数)**/
 private String title3;

代码写的丑了点,还是整出来了。

以上这篇layui动态加载多表头的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery使用ColorBox弹出图片组浏览层实例演示
Mar 14 Javascript
javascript上下方向键控制表格行选中并高亮显示的方法
Feb 13 Javascript
第一篇初识bootstrap
Jun 21 Javascript
js 打开新页面在屏幕中间的实现方法
Nov 02 Javascript
手机软键盘弹出时影响布局的解决方法
Dec 15 Javascript
微信小程序 九宫格实例代码
Jan 21 Javascript
详解Vue2.0 事件派发与接收
Sep 05 Javascript
js+css实现打字效果
Jun 24 Javascript
JavaScript字符串转数字的5种方法及遇到的坑
Jul 16 Javascript
详解Vue、element-ui、axios实现省市区三级联动
May 07 Javascript
详细讲解如何创建, 发布自己的 Vue UI 组件库
May 29 Javascript
JavaScript碰撞检测原理及其实现代码
Mar 12 Javascript
如何阻止小程序遮罩层下方图层滚动
Sep 05 #Javascript
layui多iframe页面控制定时器运行的方法
Sep 05 #Javascript
解决layer.msg 不居中 ifram中的问题
Sep 05 #Javascript
JS中比Switch...Case更优雅的多条件判断写法
Sep 05 #Javascript
layer实现弹出层自动调节位置
Sep 05 #Javascript
vue使用i18n实现国际化的方法详解
Sep 05 #Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
Sep 05 #Javascript
You might like
用PHP与XML联手进行网站编程代码实例
2008/07/10 PHP
PHP数据库调用类调用实例(详细注释)
2012/07/12 PHP
一个基于phpQuery的php通用采集类分享
2014/04/09 PHP
PHP实现RSA签名生成订单功能【支付宝示例】
2017/06/06 PHP
PHP+ajax实现上传、删除、修改单张图片及后台处理逻辑操作详解
2020/02/12 PHP
JavaScript 学习笔记二 字符串拼接
2010/03/28 Javascript
JS 遮照层实现代码
2010/03/31 Javascript
JQuery入门——用映射方式绑定不同事件应用示例
2013/02/05 Javascript
nodejs文件操作模块FS(File System)常用函数简明总结
2014/06/05 NodeJs
JavaScript实现大数的运算
2014/11/24 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
2015/11/02 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
2016/06/12 Javascript
原生js实现轮播图
2017/02/27 Javascript
原生js实现放大镜特效
2017/03/08 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
2017/12/12 Javascript
关于vue3默认把所有onSomething当作v-on事件绑定的思考
2020/05/15 Javascript
NodeJS多种创建WebSocket监听的方式(三种)
2020/06/04 NodeJs
[55:42]VG vs VGJ.T 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
Python实现Tab自动补全和历史命令管理的方法
2015/03/12 Python
使用Python的Tornado框架实现一个简单的WebQQ机器人
2015/04/24 Python
在Python中操作字典之setdefault()方法的使用
2015/05/21 Python
Python设计模式之原型模式实例详解
2019/01/18 Python
selenium+python自动化测试之环境搭建
2019/01/23 Python
Python3获取拉勾网招聘信息的方法实例
2019/04/03 Python
django query模块
2019/04/20 Python
python读写配置文件操作示例
2019/07/03 Python
基于Keras的格式化输出Loss实现方式
2020/06/17 Python
用CSS3实现瀑布流布局的示例代码
2017/11/10 HTML / CSS
易程科技软件测试笔试
2013/03/24 面试题
大学生简历中个人的自我评价
2013/10/06 职场文书
电子装配专业毕业生求职信
2014/04/23 职场文书
学校2014年度工作总结
2014/12/06 职场文书
工程部岗位职责范本
2015/04/11 职场文书
简短的人生哲理(38句)
2019/08/13 职场文书
SQLServer2008提示评估期已过解决方案
2021/04/12 SQL Server
Python 正则模块详情
2021/11/02 Python