2016-12-13 22 views
0

我正在嘗試使用yadcf插件設置true/false過濾器。據我所知,它工作正常,過濾工作正常,直到你執行搜索。此時,不再呈現選擇列表(即使清除過濾器也不會將其返回),並需要刷新頁面才能將其返回。執行搜索後清除靜態過濾器數據 - yadcf插件

下面是一些截圖,應該有助於說明問題。

這是一個搜索已經執行

This is before a search has been performed

此之前搜索後已經進行

This is after a search has been performed

下面是數據表/ yadcf的init(我已經刪除一些簡潔的代碼)。

_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開發工具在發生這種情況時不會顯示任何錯誤。 任何幫助表示讚賞!

+0

你不應該初始化yadcf在'initComplete',而不是做你初始化數據表 – Daniel

+0

@Daniel後耶將它移出yadcf init解決了問題。謝謝! – tjackadams

回答

0

你不應該初始化yadcf在initComplete,而不是做你初始化數據表後,像這樣:

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