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 相关文章推荐
JavaScript 原型与继承说明
Jun 09 Javascript
基于jquery的一个OutlookBar类,动态创建导航条
Nov 19 Javascript
js导航栏单击事件背景变换示例代码
Jan 13 Javascript
jQuery操作select下拉框的text值和value值的方法
May 31 Javascript
jQuery绑定事件不执行但alert后可以正常执行
Jun 03 Javascript
javascript中的Function.prototye.bind
Jun 25 Javascript
jquery获取img的src值的简单实例
May 17 Javascript
jQuery UI 实例讲解 - 日期选择器(Datepicker)
Sep 18 jQuery
Vuex中mutations与actions的区别详解
Mar 01 Javascript
vue-cli结合Element-ui基于cropper.js封装vue实现图片裁剪组件功能
Mar 01 Javascript
React 父子组件通信的实现方法
Dec 05 Javascript
JavaScript中10个Reduce常用场景技巧
Jun 21 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
探讨方法的重写(覆载)详解
2013/06/08 PHP
PhpStorm terminal无法输入命令的解决方法
2016/10/09 PHP
yii框架redis结合php实现秒杀效果(实例代码)
2017/10/26 PHP
PHP单例模式数据库连接类与页面静态化实现方法
2019/03/20 PHP
javascript new 需不需要继续使用
2009/07/02 Javascript
JavaScript Konami Code 实现代码
2009/07/29 Javascript
jquery.cvtooltip.js 基于jquery的气泡提示插件
2010/11/19 Javascript
javascript 45种缓动效果 非常酷
2011/06/28 Javascript
Jquery ajax传递复杂参数给WebService的实现代码
2011/08/08 Javascript
利用Jquery实现可多选的下拉框
2014/02/21 Javascript
JavaScript判断用户是否对表单进行了修改的方法
2015/03/18 Javascript
AngularJS+Node.js实现在线聊天室
2015/08/28 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
javascript嵌套函数和在函数内调用外部函数的区别分析
2016/01/31 Javascript
浅谈JavaScript 浏览器对象
2016/06/03 Javascript
浅谈jQuery 选择器和dom操作
2016/06/07 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
2018/01/26 Javascript
Vue实现带进度条的文件拖动上传功能
2018/02/23 Javascript
200行HTML+JavaScript实现年会抽奖程序
2019/01/22 Javascript
Vue export import 导入导出的多种方式与区别介绍
2020/02/12 Javascript
完美解决通过IP地址访问VUE项目的问题
2020/07/18 Javascript
Vue 3.0中jsx语法的使用
2020/11/13 Javascript
Python模拟登录的多种方法(四种)
2018/06/01 Python
使用 Python 实现简单的 switch/case 语句的方法
2018/09/17 Python
CSS的background属性及CSS3的背景图片设置总结
2016/06/13 HTML / CSS
化妆师职业生涯规划书
2014/02/16 职场文书
劳动工资科岗位职责范本
2014/03/02 职场文书
开学典礼决心书
2014/03/11 职场文书
《莫泊桑拜师》教学反思
2014/04/23 职场文书
城管综合整治方案
2014/05/01 职场文书
教育实践活动对照检查材料
2014/09/23 职场文书
2015年行风建设工作总结
2015/05/15 职场文书
故意杀人罪辩护词
2015/05/21 职场文书
入党介绍人意见范文
2015/06/01 职场文书
学习习近平主席讲话心得体会
2016/01/20 职场文书
使用ICOM IC-R9500接收机同时测评十台收音机中波接收性能
2022/05/10 无线电