2016-12-13 2 views
0

Я пытаюсь настроить фильтр true/false с помощью плагина yadcf. Насколько я могу судить, он отлично работает, и фильтрация работает нормально, пока вы не выполнили поиск. В этот момент список выбора больше не отображается (Даже очистка фильтра не возвращает его), и для его возврата требуется обновление страницы.данные статического фильтра очищаются после выполнения поиска - плагин yadcf

Вот несколько скриншотов, которые должны помочь продемонстрировать проблему.

Это до того, как поиск был проведен

This is before a search has been performed

Это после того, как поиск был проведен

This is after a search has been performed

Вот DataTable/yadcf инициализации (я удалил некоторый код для краткости).

_grid.init({ 
loadingMessage: 'Loading...', 
src: _connectionsTable, 
dataTable: { 
    ajax: { 
     url: _connectionsTable.data('url') 
    }, 
    columns: [ 
     { 
      data: 'IsAssigned', 
      sortable: false, 
      "render": function (data, type, full, meta) { 
       return (data === false 
        ? '<span class="label label-sm label-danger"> No </span>' 
        : '<span class="label label-sm label-success"> Yes </span>'); 
      } 

     } 
    ], 
    dom: 
     "<'row'<'col-md-8 col-sm-12'pli><'col-md-4 col-sm-12'<'table-group-actions pull-right'>>r>t<'row'<'col-md-8 col-sm-12'pli><'col-md-4 col-sm-12'>>", 
    initComplete: function (settings, json) { 
     var _table = new $.fn.dataTable.Api(settings); 

     // search options 
     yadcf.init(_table, [ 
      { 
       column_number: 11, 
       data: [{ value: 'true', label: 'Yes' }, { value: 'false', label: 'No' }], 
       filter_container_id: 'IsAssignedFilter', 
       filter_reset_button_text: false, 
       style_class: 'form-control form-filter input-sm' 
      } 
     ]); 
    }, 
    order: [ 
     [1, 'desc'] 
    ], 
    responsive: true, 
    stateSave: true 
} 
}); 

Другие типы поиска, похоже, работают нормально, но это первый, для которого я предоставил статические данные. Кроме того, средства Chrome dev не показывают ошибок, когда это происходит. Любая помощь приветствуется!

+0

вы не должны инициализировать yadcf в 'initComplete', вместо того, чтобы сделать это после того, как вы инициализации DataTables – Daniel

+0

@Daniel да перемещение его за пределы yadcf init разрешило проблему. Благодаря! – tjackadams

ответ

0

Вы не должны инициализировать yadcf в initComplete, а не делать это после того, как вы инициализации DataTables, как это:

var oTable = $('#example').DataTable({...}); 
yadcf.init(oTable, [{column_number: 0}]); 
Смежные вопросы