2016-02-09 2 views
0

Я успешно использую этот кодКак отключить поиск в определенных столбцах DataTable?

function refreshDataTable() { 
     // The table is made sortable 
     $('#order_proposal_table').DataTable({ 
      'destroy'   : true,  // see http://datatables.net/manual/tech-notes/3#destroy - 2nd example 
      'paging'   : false, 
      'scrollCollapse' : true, 
      'scrollY'   : '65vh', 
      'fixedHeader'  : true, 
      'dom'    : 'rt', 
     }); 
    } 

Тогда я пытаюсь включить поиск в 2 из 9 столбцов.

Так что я изменил

'dom'    : 'rt', 

в

'dom'    : 'frt', 

Чтобы показать окно ввода найти. Это работает, но он ищет все столбцы, но мне нужно искать только 2 столбца.

Так что я пытаюсь следовать этому official guide to disable filtering выборочно, и добавить columns определение

Результирующий код:

function refreshDataTable() { 
     // The table is made sortable 
     $('#order_proposal_table').DataTable({ 
      'destroy'   : true,  // see http://datatables.net/manual/tech-notes/3#destroy - 2nd example 
      'paging'   : false, 
      'scrollCollapse' : true, 
      'scrollY'   : '65vh', 
      'fixedHeader'  : true, 
      'dom'    : 'frt', 
      'columns'   : [   // see https://datatables.net/reference/option/columns.searchable 
       { 'searchable': false }, 
       { 'searchable': false }, 
       null, // product code 
       null, // description 
       { 'searchable': false } 
      ] 
     }); 
    } 

Проблема заключается в том, что я имею ошибку javscript из DataTable JavaScript

TypeError: col is undefined

Удаление columns код работает.

Что я делаю неправильно?

ответ

6

Я решил использовать опцию columnsDef.

Следующий код отключил поиск указанных столбцов. Именно то, что я хотел.

'columnDefs'  : [   // see https://datatables.net/reference/option/columns.searchable 
       { 
        'searchable' : false, 
        'targets'  : [0,1,4,5,6,7,8,9] 
       }, 
      ] 
1

Вы пробовали передать null для оставшихся 4 столбцов, а не просто указывать первые 5? Итак:

'columns': [ 
      { 'searchable': false }, 
      { 'searchable': false }, 
      null, 
      null, 
      { 'searchable': false }, 
      null, 
      null, 
      null, 
      null 
     ] 

Я бы разместил это как комментарий, но я не мог включить пример.

Смежные вопросы