таблицы данных jquery — запускают функцию экспорта через href

#javascript #jquery #datatables #jquery-datatables

#javascript #jquery #таблицы данных

Вопрос:

может кто-нибудь объяснить, как я могу запустить функцию экспорта (копирование, csv, …), щелкнув ссылку href. Возможно ли это? Приведенный ниже код создает кнопки, но как я могу назначить действие моим li-элементам?

Пример кода:

HTML:

  <ul class="menulist">
<li><a href="#">Copy</a></li>
 <li><a href="#">Text File (*.txt)</a></li>
<li><a href="#">Excel File (*.xlsx)</a></li>
</ul>
  

Javascript:

 $(document).ready(function() {

    var table = $('#example').DataTable(
      {"pagingType": "full_numbers",
         "bStateSave": true,
            "sDom": "<'row'<'col-xs-6 col-left'l><'col-xs-6 col-right'<'export-data'T>f>r>t<'row'<'col-xs-6 col-left'i><'col-xs-6 col-right'p>>",
dom: 'T<"clear">lfrtip',
                        "oTableTools": {
              "sSwfPath" :"???",
            "aButtons": [
            {'sExtends': "copy", "mColumns": "visible",  "bFooter": false,  "bSelectedOnly": true},
            {'sExtends':'csv',"sFileName": "test.csv"},
            {'sExtends':'xls',"sFileName": "test.xls",}
            ]       
        },

      }
    );
});
  

Вот ссылка, с которой я тестирую.

ОБНОВЛЕНИЕ: просто чтобы указать: я уже использую DataTools, который отлично работает со стандартными кнопками, которые создаются, но мне нужно настроить его, чтобы я мог использовать его в других элементах / объектах.

Спасибо.

Комментарии:

1. Взгляните на TableTools: https://datatables.net/extensions/tabletools /

2. Я уже использую это — вместо стандартных кнопок я хочу иметь эти ссылки в href.

3. Я знаю, что это не совсем то, что вы ищете, но кнопки представляют собой ссылки с примененными стилями css. Вы могли бы удалить стили из DTTT_button DTTT_button_copy класса, и у вас осталась бы текстовая ссылка.

Ответ №1:

Вам не хватает sSwfPath пути :

 "sSwfPath" :"???",
  

Замените это URL-адресом вашего swf-файла. Потому что экспорт выполняется с помощью flash.

Пример из документа tabletools :

 $(document).ready( function () {
    $('#example').dataTable( {
        "dom": 'T<"clear">lfrtip',
        "tableTools": {
            "sSwfPath": "/swf/copy_csv_xls_pdf.swf"
        }
    } );
} );