jQuery DataTables:将各列导出到Excel

时间:2011-11-21 05:52:36

标签: jquery datatables export-to-excel

在网页上,我显示网站用户创建的主题列表,仅列出其标题。我可以使用TableTools导出到excel整个表,它工作正常。但是,有些列不是必需的,我想以某种方式隐藏它们中的一些。在一个完美的情况下,我想在用户点击“XLS”按钮时显示一个小弹出窗口,其中有几个带有相应表格标题的复选框和一个“导出”按钮。这样,用户只能选择导出所需的数据。有人可以指点我吗?

  1. 是否可以在jQuery DataTables中将各列导出到Excel?
  2. 是否可以导出以前使用fnSetColumnVis函数隐藏的列?

2 个答案:

答案 0 :(得分:9)

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

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

文档为here

答案 1 :(得分: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
                }, ]
        }
    } );
} );