Кнопки экспорта не отображаются для моей таблицы данных на моей странице - JS Datatable - PullRequest
0 голосов
/ 30 января 2019

У меня есть данные в JavaScript.Загруженные библиотеки JS перечислены ниже, именно в таком порядке.

            <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/datatables/1.10.19/js/jquery.dataTables.js"></script> 
            <script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/dataTables.buttons.min.js"></script>
            <script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/buttons.flash.min.js"></script>
            <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script>
            <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/pdfmake.min.js"></script>
            <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js"></script>
            <script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/buttons.html5.min.js"></script>
            <script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/buttons.print.min.js"></script>

Дата создания данных создается следующим образом:

myTable = $('#example').on('error.dt', function (e, settings, techNote, message) {
                                console.log('An error has been reported by DataTables: ', message);
                            }).DataTable({
                                dom: 'lBfrtip',
                                buttons: ['copyHtml5', 'excelHtml5', 'pdfHtml5', 'csvHtml5'
                                ],
                                fixedColumns: true,
                                "columnDefs": [{
                                    //"bSortable": false,
                                    "width": '60%',
                                    "defaultContent": "-",
                                    "targets": "_all"
                                }]
                            });

Проблема в том, что я не вижу кнопку экспорта набраузер.Я использую Google Chrome.В подобных вопросах люди говорят, что порядок библиотек JS имеет значение, но мой порядок совпадает с их.В настройках сайта также разрешена Flash.Там нет ошибки в консоли Chrome, когда я нажимаю F12.Я не мог найти, почему кнопки не отображаются на экране.Пробовал не использовать Html5 при настройке кнопок, не получилось.Любая помощь будет оценена.

1 Ответ

0 голосов
/ 30 января 2019

Вы, вероятно, уже сделали это, но просто для проверки ... Вы также загрузили CSS для кнопок?

<link href="https://cdn.datatables.net/buttons/1.5.1/css/buttons.dataTables.min.css" rel="stylesheet">

Этот пример, основанный на вашем коде, работает для меня.

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>DataTables With Export</title>
<link href="https://cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css" rel="stylesheet">
<link href="https://cdn.datatables.net/buttons/1.5.1/css/buttons.dataTables.min.css" rel="stylesheet">
</head>

<body>
<h1>DataTables</h1>
<table class="table display" id="example" style="width:100%">
  <thead>
    <tr>
      <th>Col 1</th>
      <th>Col 2</th>
      <th>Col 3</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Data 1</td>
      <td>Data 2</td>
      <td>Data 3</td>
    </tr>
    <tr>
      <td>Data 1</td>
      <td>Data 2</td>
      <td>Data 3</td>
    </tr>
  </tbody>
</table>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script> 
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/datatables/1.10.19/js/jquery.dataTables.js"></script> 
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/dataTables.buttons.min.js"></script> 
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/buttons.flash.min.js"></script> 
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script> 
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/pdfmake.min.js"></script> 
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js"></script> 
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/buttons.html5.min.js"></script> 
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.2/js/buttons.print.min.js"></script> 
<script>
jQuery(document).ready(function($) {
myTable = $('#example').on('error.dt', function (e, settings, techNote, message) {
    console.log('An error has been reported by DataTables: ', message);
}).DataTable({
    dom: 'lBfrtip',
    buttons: ['copyHtml5', 'excelHtml5', 'pdfHtml5', 'csvHtml5'],
    fixedColumns: true,
    "columnDefs": [{
    //"bSortable": false,
    "width": '60%',
    "defaultContent": "-",
    "targets": "_all"
    }]
});
} );
</script>
</body>
</html>

...