我正在尝试使按钮扩展正常工作,但是在尝试初始化表时一直出现错误。

包含的文件:

<script src="https://cdn.datatables.net/buttons/1.0.3/js/dataTables.buttons.min.js"></script>
<script src="assets/js/pdfmake.min.js"></script>
<script src="assets/js/vfs_fonts.js"></script>
<script src="assets/js/jszip.js"></script>


我也尝试过包括这些,但是我也得到了一些错误,这些错误是我认为是原始问题引起的。我目前已将它们注释掉:

https://cdn.datatables.net/buttons/1.0.3/js/buttons.print.min.js
https://cdn.datatables.net/buttons/1.0.3/js/buttons.flash.min.js
https://cdn.datatables.net/buttons/1.0.3/js/buttons.html5.min.js


使用方法1创建表:

$("#generic-list-table").DataTable( {
    dom: 'Bfrtip',
    buttons: [
        'copy', 'excel', 'pdf'
    ]
} );


我在buttons.min.js中收到以下错误:

a.init is not a function


使用第二种方法时:

var table = $('#generic-list-table').DataTable();

new $.fn.dataTable.Buttons( table, {
    dom: 'Bfrtip',
    buttons: [
        'copy', 'excel', 'pdf'
    ]
} );


我收到此错误:

this.c.dom.container is undefined


我正在完全复制这些示例。我不知道该做些什么。

最佳答案

我使用示例代码(https://www.datatables.net/extensions/buttons/examples/initialisation/simple.html)并下载了所有相关参考以在本地工作,并且效果很好。

选中this link以下载包含本地文件的示例。

这是要初始化的代码

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

09-25 18:39