首页 > 解决方案 > 数据表将html表导出到不同工作表中的excel中按日期分组

问题描述

我想制作一个按钮来将 HTML 表格导出到不同的表格中。例如:我有一个表包含日期列。

name  | date
Hamza | 2018/04/25
...   | 2018/04/26
...   | ...
...   | 2018/04/30
john  | 2018/06/05

我想在一张纸上制作第一周(25/04=>30)的数据,在另一张纸上制作另一周的数据

标签: jqueryexceldatatables

解决方案


从 jQuery DataTable 获取数据的方法是使用$([table]).DataTable().rows().data().

这将为您提供表格的每一行作为数组数组。使用您的示例,它应该返回:

[["Hamza", "2018/04/25],["", 2018/04/26],["",""]["", 2018/04/30],["john", "2018/06/05"]]

现在你有了它,你可以用 a 循环浏览你的数据.forEach并选择你想要的任何东西。至于从中创建电子表格,最好的方法是从数据中创建 .csv。将它们放在一起应该看起来像这样:

const tableData = $([table]).DataTable().rows().data();
let csv = '';
tableData.forEach( rowArray => {
  if (rowArray[1] === '2018/04/25') csv += rowArray.join(",") + "\r\n" )
};

推荐阅读