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 相关文章推荐
不能再简单的无闪刷新验证码原理很简单
Nov 05 Javascript
javascript设计模式 封装和信息隐藏(上)
Jul 24 Javascript
详解AngularJS中的依赖注入机制
Jun 17 Javascript
使用coffeescript编写node.js项目的方法汇总
Aug 05 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
Jun 12 Javascript
浅谈JavaScript对象与继承
Jul 10 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
Oct 28 Javascript
微信小程序网络请求的封装与填坑之路
Apr 01 Javascript
vue使用技巧及vue项目中遇到的问题
Jun 04 Javascript
微信小程序云开发实现增删改查功能
May 17 Javascript
微信小程序实现收货地址左滑删除
Nov 18 Javascript
JS实现单张或多张图片持续无缝滚动的示例代码
May 10 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正则删除html代码中a标签并保留标签内容的方法
2017/05/23 PHP
laravel migrate初学常见错误的解决方法
2017/10/11 PHP
jquery tools 系列 scrollable学习
2009/09/06 Javascript
如何让div span等元素能响应键盘事件操作指南
2012/11/13 Javascript
JS 实现导航栏悬停效果
2013/09/23 Javascript
点击按钮自动加关注的代码(sina微博/QQ空间/人人网/腾讯微博)
2014/01/02 Javascript
Javascript 拖拽雏形(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
javascript创建动态表单的方法
2015/07/25 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
HTML页面定时跳转方法解析(2种任选)
2016/12/22 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
2017/03/02 Javascript
BootStrap daterangepicker 双日历控件
2017/06/02 Javascript
利用es6 new.target来对模拟抽象类的方法
2019/05/10 Javascript
nodejs各种姿势断点调试的方法
2020/06/18 NodeJs
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
浅谈vue 多个变量同时赋相同值互相影响
2020/08/05 Javascript
phpsir 开发 一个检测百度关键字网站排名的python 程序
2009/09/17 Python
python根据京东商品url获取产品价格
2015/08/09 Python
Windows下为Python安装Matplotlib模块
2015/11/06 Python
Python金融数据可视化汇总
2017/11/17 Python
python中实现数组和列表读取一列的方法
2018/04/03 Python
利用numpy和pandas处理csv文件中的时间方法
2018/04/19 Python
python3实现名片管理系统
2020/11/29 Python
python绘制玫瑰的实现代码
2020/03/02 Python
Python 解析xml文件的示例
2020/09/29 Python
一套软件测试笔试题
2014/07/25 面试题
内刊编辑求职自荐书范文
2014/02/19 职场文书
教师个人事迹材料
2014/12/17 职场文书
市场营销计划书范文
2015/01/16 职场文书
会议室使用管理制度
2015/08/06 职场文书
高中政治教师教学反思
2016/02/23 职场文书
导游词之澳门玫瑰圣母堂
2019/12/03 职场文书
JS不要再到处使用绝对等于运算符了
2021/04/30 Javascript
Python中OpenCV实现简单车牌字符切割
2021/06/11 Python
详解Java实现设计模式之责任链模式
2021/06/23 Java/Android
浅谈为什么我的 z-index 又不生效了
2022/07/15 HTML / CSS