jQuery DataTables: 将单个列导出到Excel

5

我在网页上展示了一个由网站用户创建的主题列表,只列出了它们的标题。我可以使用TableTools将整个表格导出到Excel,并且它有效。然而,有些列是不必要的,我想以某种方式隐藏其中的一些列。在完美的情况下,当用户点击“XLS”按钮时,我想显示一个小弹出窗口,其中包含具有各自表头的复选框和“导出”按钮。这样,用户可以仅选择需要导出的数据。请问有人可以指导我吗?

  1. 在jQuery DataTables中,是否可能将单独的列导出到Excel?
  2. 在使用fnSetColumnVis函数隐藏某一列后,是否可能将其导出?
2个回答

9

当您在 oTableTools 中定义您的按钮时,可以设置要导出哪些列:

"oTableTools":{
    'aButtons':[
        {'sExtends':'xls',
         'mColumns':[1,2,7,23] //set which columns here
        },
        {'sExtends':'pdf',
         'mColumns':'visible' //set which columns here
        },
                                ]
}

这里有文档查看


非常感谢!这很有帮助,特别是链接! - parrker9

4
请看以下代码块,希望能对您有所帮助。
$(document).ready( function () {    
    $('#datagridtable').dataTable( {
        "sDom": '<"H"Tfr>tC<"F"ip>',

        "oColVis": {
            "buttonText": "&nbsp;",
            "bRestore": true,
            "sAlign": "right"
        },
        "oTableTools": {
            "sSwfPath": "datagrid/media/swf/copy_csv_xls_pdf.swf",
            "aButtons": [ 
                {'sExtends':'xls',
                    'mColumns':'visible' //set which columns here
                }, 
                {'sExtends':'pdf',
                    'mColumns':'visible' //set which columns here
                },
                {'sExtends':'print',
                    'mColumns':'visible' //set which columns here
                }, ]
        }
    } );
} );

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接