为了账号安全,请及时绑定邮箱和手机立即绑定

仅下载 Tabulator 表中的选定行?

仅下载 Tabulator 表中的选定行?

慕村9548890 2022-05-26 11:13:01
寻找有关如何下载仅包含 Tabulator 表中选定行的 (CSV) 的指南。我正在使用这样的行选择器:{title: "Selector", formatter: "rowSelection", titleFormatter: "rowSelection", align: "center", headerSort: false, cellClick: function (e, cell) {   cell.getRow().toggleSelect();}}我没有找到这方面的示例或问题,并且文档(虽然很好)并没有揭示一个简单的方法。除了表格对象之外,我没有找到 .download 方法作为任何东西的一部分。我没有运气尝试通过选择过滤表,然后下载,然后取消过滤。过滤器似乎适用于基础数据字段,并且未找到此 Selected 列,尽管我想我可以考虑在代码中为此管理数据字段。我考虑过创建第二个表的方法,将选定的行复制到它上面,然后在销毁它之前下载它,但没有尝试过。我已经考虑过创建自定义下载功能的方法,该功能已记录在案,但尚未尝试过。有什么建议吗?
查看完整描述

2 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

恐怕目前这不可能作为内置功能,但这将在 4.7 版本中出现。


但是您过滤表的方法是一种很好的方法,您需要使用rowSelected和rowDeselected回调来切换行数据的属性:


var table = new Tabulator("#example-table", {

    rowSelected:function(row){

        row.update({selected:true});

    },

     rowDeselected:function(row){

        row.update({selected:false});

    },

});

然后按此值过滤表:


table.setFilter("selected", "=", true);


查看完整回答
反对 回复 2022-05-26
?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

可能 && 测试

不幸的是,没有本机功能可以做到这一点,但我找到了一种解决方法来实现此功能。

短篇故事

  1. 创建另一个隐藏的表格 div(比如说 table2)

  2. 从 table1 中选择行(通过单击或按功能)

  3. 通过以下方式获取所选数据

var rows = table.getData("selected")

  1. Init table2 将行作为数据传递(按照列的 SoP)

  2. 将此隐藏表传递给 CSV/PDF 函数以下载 CSV/PDF。

//您可以将类型更改为 CSV 以进行 CSV 下载

table2.download("pdf", "data.pdf", {orientation: "portrait", //将页面方向设置为纵向 title: "Example Report", //为报告添加标题 });


查看完整回答
反对 回复 2022-05-26
  • 2 回答
  • 0 关注
  • 137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信