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操作JSON实例代码
Feb 09 Javascript
HTML DOM的nodeType值介绍
Mar 31 Javascript
JqGrid web打印实现代码
May 31 Javascript
jquery对ajax的支持介绍
Dec 10 Javascript
一个仿糯米弹框效果demo
Jul 22 Javascript
jQuery中extend函数详解
Feb 13 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
Jun 15 Javascript
Select2.js下拉框使用小结
Oct 24 Javascript
js数据类型转换与流程控制操作实例分析
Dec 18 Javascript
vue商城中商品“筛选器”功能的实现代码
Jul 01 Javascript
如何在JS文件中获取Vue组件
Sep 16 Javascript
ant design中upload组件上传大文件,显示进度条进度的实例
Oct 29 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
德劲1102收音机的打理维修案例
2021/03/02 无线电
PHP函数utf8转gb2312编码
2006/12/21 PHP
Discuz不使用插件实现简单的打赏功能
2019/03/21 PHP
Laravel框架源码解析之入口文件原理分析
2020/05/14 PHP
PHP中isset、empty的用法与区别示例详解
2020/11/05 PHP
层序遍历在ExtJs的TreePanel中的应用
2009/10/16 Javascript
JS获取浏览器版本及名称实现函数
2013/04/02 Javascript
JavaScript设置首页和收藏页面的小例子
2013/11/11 Javascript
javascript实现页面内关键词高亮显示代码
2014/04/03 Javascript
14款NodeJS Web框架推荐
2014/07/11 NodeJs
javascript实现根据身份证号读取相关信息
2014/12/17 Javascript
JS获取各种宽度、高度的简单介绍
2014/12/19 Javascript
Jquery简单实现GridView行高亮的方法
2015/06/15 Javascript
node.js操作mysql(增删改查)
2015/07/24 Javascript
老生常谈js动态添加事件--- 事件委托
2016/07/19 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
浅谈Angular6的服务和依赖注入
2018/06/27 Javascript
深入理解JS异步编程-Promise
2019/06/03 Javascript
vue-router之解决addRoutes使用遇到的坑
2020/07/19 Javascript
JS如何实现在弹出窗口中加载页面
2020/12/03 Javascript
python实现域名系统(DNS)正向查询的方法
2016/04/19 Python
python操作字典类型的常用方法(推荐)
2016/05/16 Python
keras 获取某层的输入/输出 tensor 尺寸操作
2020/06/10 Python
sklearn和keras的数据切分与交叉验证的实例详解
2020/06/19 Python
什么是Python包的循环导入
2020/09/08 Python
如何创建一个Flask项目并进行简单配置
2020/11/18 Python
Vince官网:全球著名设计师品牌,休闲而优雅的服饰
2017/01/15 全球购物
英国在线玫瑰专家:InterRose
2019/12/01 全球购物
机械制造专业毕业生求职信
2014/03/02 职场文书
国贸专业的职业规划书
2014/03/15 职场文书
奉献家乡演讲稿
2014/09/16 职场文书
“四风”问题自我剖析材料思想汇报
2014/09/23 职场文书
圣诞晚会主持词
2015/07/01 职场文书
2015七夕情人节宣传语
2015/07/14 职场文书
Redis实现订单过期删除的方法步骤
2022/06/05 Redis