#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