datatables +如何将服务器端处理代码与文件导出代码相结合

时间:2016-04-19 20:20:14

标签: datatables

这是添加按钮以将数据导出到csv,pdf,excel的数据表示例.... fiddle here

https://datatables.net/extensions/buttons/examples/initialisation/export.html

$(document).ready(function() {
    $('#example').DataTable( {
        dom: 'Bfrtip',
        buttons: [
            'copy', 'csv', 'excel', 'pdf', 'print'
        ]
    } );
} );

这是服务器端处理的数据表示例

https://datatables.net/examples/server_side/simple.html

$(document).ready(function() {
    $('#example').DataTable( {
        "processing": true,
        "serverSide": true,
        "ajax": "scripts/server_processing.php"
    } );
} );

现在我如何将上面的代码组合成一个,这样我就有了一个服务器端处理的数据表,这是我的尝试,但我不确定它在哪里出错,或者我确实在接近。

$(document).ready(function() {
    $('#example').DataTable( {
        "processing": true,
        "serverSide": true,
        "ajax": "scripts/server_processing.php",
        "dom": 'Bfrtip',
        buttons: [
            'copy', 'csv', 'excel', 'pdf', 'print'
        ]       
    } );
} );

我尝试了各种排列,但我仍然在控制台Uncaught SyntaxError: Unexpected string中收到错误 有人可以建议吗?

这是我正在使用

的真实例子
    $(document).ready(function() {
        var dataTable = $('#employee-grid').DataTable( {
            "processing": true,
            "serverSide": true,
            "ajax":{
                url :"employee-grid-data2.php", // json datasource
                type: "post",  // method  , by default get
                error: function(){  // error handling
                    $(".employee-grid-error").html("");
                    $("#employee-grid").append('<tbody class="employee-grid-error"><tr><th colspan="3">No data found in the server -- startagain1-index2.php </th></tr></tbody>');
                    $("#employee-grid_processing").css("display","none");

                }
            },
            "dom:" 'Bfrtip',
            "buttons": [
                'copy', 'csv', 'excel', 'pdf', 'print'
            ]
        } );
    } );

1 个答案:

答案 0 :(得分:3)

您有sintax错误,请在此行中更改您的代码:

不正确:

"dom:" 'Bfrtip', 

正确:

"dom" : 'Bfrtip', 

结果:jsfiddle