2015-10-08 8 views
1

Я использую datatables для отображения таблицы с использованием ajax. Когда я исправляю первый столбец, его нельзя искать/фильтровать? мой код выглядит следующим образом:Невозможно выполнить поиск данных с фиксированным столбцом

 var quotetable = $('#quotelog-table').DataTable(
    { 
    "ajax": {"url": "functions/ajax-getquotelog.php", "type": "POST"}, 
      "deferRender": true, 
      fixedHeader: true, 
      fixedColumns: { 
      leftColumns: 1 
      }, 
      scrollX: true, 
      scrollY: "560px", 
      colReorder: true, 
      select: { 
      style: 'single' 
      }, 
      "language": { 
      "lengthMenu": "Showing _MENU_ records per page", 
        "zeroRecords": "Nothing found - sorry", 
        "info": "Showing page _PAGE_ of _PAGES_ of _MAX_ items", 
        "infoEmpty": "No records available", 
        "infoFiltered": "(filtered from _MAX_ total records)" 
      }, 
      "lengthMenu": [[20, 25, 50, 100, - 1], [20, 25, 50, 100, "All"]] 

     }); // end of datatable. 

// Apply the search 
    quotetable.columns().every(function() { 
     var that = this; 

    $('input', this.footer()).on('keyup change', function() { 

     if (that.search() !== this.value) { 
      that 
       .search(this.value) 
       .draw(); 
     } 
    }); 
}); 

страница отображается правильно - я могу просмотреть все и сортировать во всех областях, кроме первого (что фиксируется?) Если я удалить fixedColumns из кода он работает правильно. Это ошибка или кто-нибудь знает обходной путь?

+0

Вы пытались определить столбец как для поиска так: "столбцы": [{ "поиск": истинно}, нуля, нуля, нуля, ... ]? (Я знаю, что это правда по умолчанию, но вы все равно можете попробовать ....) – Laurent

+0

Можете ли вы воспроизвести ошибку на http://jsfiddle.net/? – Laurent

ответ

0

Я нашел решение.

Он появляется запись fixedColumns в DataTable:

fixedColumns: { 
       leftColumns: 1 
       }, 

генерирует дубликат ввода текста для этого столбца. (класс .DTFC_LeftFootWrapper) Другие окна ввода отображаются заранее.

, добавив следующее в мой css, нежелательные текстовые поля не отображаются.

.DTFC_LeftFootWrapper { 
    display:none; 
} 

Спасибо за вашу помощь

Тони

0
<Script> 

$(document).ready(function() { 
    var dt = $('#sample').DataTable({ 
     "processing": true, 
     "serverSide": true, 
     "ajax": "serverRequest/manage_login.php", 
     "columns": [ 
     null,null,null, 
{ "searchable": false },null,{ "searchable": false },{ "searchable": false },null,{ "searchable": false },{ "searchable": false } 
     ] 

    }); 

}); 

</script> 
0

Если ваш вопрос касается Bootstrap DataTables, есть пример в документации here.

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