【问题标题】:Is it possible to add another columns in Datatable export function?是否可以在数据表导出功能中添加其他列?
【发布时间】:2016-04-08 02:46:44
【问题描述】:

我正在使用数据表来输出我的列表。在我的 HTML 列表中,有几列不重要的其他列被隐藏了。 是否可以在导出功能中包含这些列?另一个问题是如何以横向模式打印 PDF?

这是我的代码:

我的 JSON 数据

$data['data'][] = array(
                    ($con['contract_ext'] != '') ? '<a href="' . site_url('contracts/contracts/edit_contract_phase1?contract_id=' . $con['id']) . '" class="btn-link">'. $con['contract_id'] . '-' . $con['contract_ext'] . '</a>' : '<a href="' . site_url('contracts/contracts/edit_contract_phase1?contract_id=' . $con['id']) . '" class="btn-link">' . $con['contract_id'] . '</a>',
                    '<span class="txt_small">' . $client['client_name'] . '</span>',
                    $con['contract_type'],
                    format_mysql_time($con['date_added'], 'm/d/Y - H:i:s'),
                    format_mysql_time($con['date_modified'], 'm/d/Y H:i:s'),
                    $added_by['name'],
                    $con['status'],
                    '<a data-toggle="modal"  href="javascript:;" data-target="#myModal" data-id="' . $con['id'] . '" id="contract-' .  $con['id']. '" class="btn btn-sm btn-default contract_modal" type="button"><span class="fa fa-paperclip"></span></a> ' .
                    '<button type="button" class="btn btn-sm btn-default" onClick="addRemark(' . $con['id'] . ')"><span class="fa fa-comment-o"></span></button> ' .
                    '<button type="button" class="btn btn-sm btn-danger"><span class="fa fa-trash"></span></button>'

                );

我的 JS

<script type="text/javascript">
    $('#contract-list').DataTable({
    "ajax": "<?php echo site_url('contracts/contracts/load_contracts'); ?>",

    dom: 'Bfrtip',
    buttons: [
        'copy', 'csv', 'excel', 'pdf', 'print'
    ],
    "order": [],
        "columnDefs": [ {
          "targets"  : 'no-sort',
          "orderable": false,
        }]
    });
</script>

希望你能帮我解决这个问题

【问题讨论】:

    标签: jquery datatables


    【解决方案1】:

    默认情况下,Datatables 将导出表中的所有列。我有一种感觉,不支持您为隐藏列所做的任何事情。您应该做的是使用支持数据表的方法隐藏不需要的列。在这个例子中,我隐藏了两列:

    columnDefs: [{targets: [4, 5], visible: false}]
    

    至于制作 PDF 横向,有一个针对此按钮的选项:

    {extend: 'pdf', orientation: 'landscape'}
    

    这里都为你整理好了。请记住删除您的列隐藏逻辑,而是更新“目标”选项中的列列表,以便查看下面的 columnDef:

    <script type="text/javascript">
        $('#contract-list').DataTable({
            "ajax": "<?php echo site_url('contracts/contracts/load_contracts'); ?>",
    
            dom: 'Bfrtip',
            buttons: [
                'copy', 'csv', 'excel', {extend: 'pdf', orientation: 'landscape'}, 'print'
            ],
            "order": [],
            "columnDefs": [
                {"targets": 'no-sort', "orderable": false},
                {"targets": [4, 5], visible: false}
            ]
        }
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-19
      • 1970-01-01
      • 1970-01-01
      • 2021-12-07
      相关资源
      最近更新 更多