繁体   English   中英

在jQuery数据表中将复选框的值导出为ex​​cel

[英]export value of checkboxes to excel in jQuery datatables

我正在使用jQuery Datatables来查看一些数据,我在我的表中有两个包含复选框的列,我试图使用excelexcelHtml5以及excelFlash按钮将表中的数据导出到XSLX文件但我得到两个空在文件中的列,我还在我的项目中包含了JSZip插件但是徒劳无功。 如何在我的文件中将这些复选框的值作为布尔值获取。

您正在使用DataTables 1.10.8。 在此版本(1.10.7及更早版本)之前,有一些带有fnCellRender选项的fnCellRender可以帮助您完成所需的操作。 从1.10.8开始,TableTools扩展已被Buttons扩展名替换。

使用Buttons扩展,您可以使用exportOptions并告诉DataTables您希望用于排序的数据( orthogonal: 'sort' )。 然后,您需要定义render函数并在执行排序时返回适当的数据( type === 'sort' )。

作为副作用,这将使您的复选框列也可以排序。

var table = $('#example1').DataTable({
    dom : 'Bfrtlip',    
    buttons: [
        {
            extend: 'excel',
            exportOptions: {
                orthogonal: 'sort'
            }
        }        
    ],
    columnDefs: [{
       targets:[0,5],
       render: function(data, type, row, meta){
          if(type === 'sort'){
             var $input = $(data).find('input[type="checkbox"]').addBack();
             data = ($input.prop('checked')) ? "1" : "0";
          }

          return data;    
       }
    }]
});

DEMO

有关代码和演示,请参阅此jsFiddle

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM