плагин «yadcf» не работает с таблицами данных

#datatables #yadcf

#таблицы данных #yadcf

Вопрос:

Я пытаюсь использовать плагин фильтрации «yadcf» с таблицами данных и получаю «Uncaught TypeError: неопределенный не является функцией» в качестве ошибки при вызове функции yadcf.

Я убедился, что плагин загружен, я не уверен, в чем проблема.

Вот загружаемые библиотеки:

 <script type="text/javascript" charset="utf-8" src="/DataTables/media/js/jquery-1.10.2.js"></script>
<script type="text/javascript" charset="utf-8" src="/DataTables/jquery-ui-1.10.3/ui/jquery-ui.js"></script>

<script type="text/javascript" charset="utf-8" src="/DataTables-1.10.0/media/js/nightly2.js"></script>
<script type="text/javascript" charset="utf-8" src="/yadcf-0.7.4/jquery.dataTables.yadcf.js"></script>
  

Файлы css:

 <style type="text/css" title="currentStyle">
    @import "/DataTables/media/css/demo_table.css";
    @import "/yadcf-0.7.4/jquery.dataTables.yadcf.css";
    @import "/DataTables/examples/examples_support/themes/ui-lightness/jquery-ui-1.8.4.custom.css";

</style>
  

Datatable:

 oTable = $('#FE_Time_Table').DataTable( {
   "ajax":{"url": 'FE_Data.php', "dataSrc":'data'},
   "jQueryUI": true,  //Allow use of jquery-ui plug-in for themes
   "dom": 'W<"H"frCi>tS<"">', //Settings for where all the options appear on the page

   "columns": [
        { "name": "plate_no", "data": "plate_no", "className": "center_text" },
        { "name": "job_no", "data": "job_no", "className": "center_text" },
        { "name": "customer", "data": "customer" },
        { "name": "device", "data": "device" },
              ]

   }).yadcf([{column_number : 0}]);
  

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

1. Вы используете таблицы данных 1.10.x, насколько я могу прочитать, yadcf пока не поддерживает 1.10.x (!!) -> datatables.net/forums/discussion/15016 /…

2. Я пробовал использовать 1.10.0, который является последней версией. Он по-прежнему не работает, но на веб-сайте yadcf говорится, что он поддерживается

3. предыдущая версия yadcf поддерживала 1.10.0, но не новый API таблиц данных (заглавная «D»), в любом случае, последняя версия yadcf также поддерживает новый API

Ответ №1:

Вам нужно использовать последнюю версию yadcf 0.8.2, возьмите ее из репозитория github

Тогда вам следует использовать новую функцию инициализации yadcf, например, так

 var Table = $('#FE_Time_Table').DataTable(...);
yadcf.init(Table , [{column_number : 0}]);
  

вы можете увидеть эту новую функцию инициализации в действии на витрине


p.s Я автор yadcf

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

1. вчера было выпущено обновление yadcf 0.8.2, поддержка: новый Datatable API — используйте yadcf.init(…) / Select2 / ColVis

2. @Daniel Пожалуйста, обновите свои документы. Это заставило меня задуматься на 30 минут. Эти документы устарели. yadcf-showcase.appspot.com/DOM_source.html

3. @SpoiledTechie.com Я не смогу сделать это в ближайшем будущем, но поскольку витрина является общедоступной github.com/vedmack/yadcf-showcase не стесняйтесь отправлять PR