2012-03-31 20 views
19

Quiero usar la función de filtro de DataTables, pero no quiero usar su cuadro de búsqueda con ella.Filtro dataTables.net sin entrada de filtro incluida

In their docs bajo bfilter que dice:

Tenga en cuenta que si desea utilizar el filtrado de tablas de datos que esto debe seguir siendo 'verdadero' - para quitar el cuadro de entrada de filtrado por defecto y retener el filtrado de habilidades, por favor utilice

después del cual la oración queda incompleta.

me trataron:

var oTable = $('#sortable').dataTable({ 
    'bPaginate':false, 
    'bInfo':false, 
    'bFilter': true // displays Search box, setting false removes filter ability all together 
}); 
$('#Accumulate').click(function(){ 
    oTable.fnFilter("Accumulate"); 
}); 

Respuesta

20

También puede ocultar está usando la clase css

<style type="text/css"> 
.dataTables_filter { 
    display: none; 
} 
</style> 
+1

Aha, simple y rápido. Gracias. – Pratyush

+0

Sí, de nada. – Daniel

+4

sDom también es simple y rápido. ;-) Y no cambiará CSS para otras tablas que podrían estar usando el cuadro de búsqueda. Definitivamente no son "uvas agrias" aquí, pero honestamente siento que excluir el cuadro de búsqueda usando las herramientas proporcionadas es una solución "mejor" que incluirla y luego ocultarla. –

12

Pratyush,

muestra cosmética pura y ocultamiento de diferentes elementos de interfaz de usuario se realiza con el parámetro Sdom:

http://datatables.net/usage/options#sDom

Tenga en cuenta que la sintaxis requerida es diferente dependiendo de si está usando jQuery UI o no.

+1

Yo miraba a la documentación Sdom y yo diría que está lejos de ser "simple". De hecho, no tenía sentido para mí. Ocultar a través de CSS es muy simple y rápido, aunque tal vez no sea el método óptimo. – dmikester1

+0

De acuerdo; no es simple Me tomó más de unos pocos intentos para hacerlo bien para mis aplicaciones. Sin embargo, creo que el tiempo invertido en "obtenerlo" vale la pena; entonces podrá modificar los componentes en lugar de modificar el CSS. –

12

Uso (potencialmente acelerar la inicialización tabla de datos como evitar algunos cálculos):

$("#table").dataTable({"bFilter": false}); 

o cualquier Sdom sin f opción (consulte los documentos oficiales http://datatables.net/usage/options#sDom para ver la lista de opciones disponibles):

$("#table").dataTable({"sDom": '...t...'}); 

Buscar las mismas opciones en el sitio oficial de soporte: http://datatables.net/forums/discussion/289/disable-search-filter-text-box

+1

Gracias por trabajar para mí .... –

3
"sDom": 'ltipr' 

es la más simple de las formas de hacerlo.

ejemplo completo que he utilizado:

oTable = $('#overview').dataTable(

     { 
      "aoColumns":[ 
           null, 
           null, 
           null, 
           null, 
           null, 
           { "sSortDataType":"date-euro"}, 
           { "sSortDataType":"date-euro",}, 
           null 
       ], 
       "aaSorting":[], 
       "iDisplayLength": -1, 
       "aLengthMenu": [[5, 10, 25, 50, -1], [5, 10, 25, 50, "All"]], 
       "sDom": 'ltipr' 

     } 
     ); 
+0

Hola Andrew, voy a intentar esto, pero tengo curiosidad por saber qué significa 'ltipr', y si pudieras agregar un poco de color a la forma en que esto hace que se oculte la caja de filtros. ¡Gracias por adelantado! – Poul

+0

Hola Poul, aquí está lo siguiente: 'l' - Cambio de longitud 'f' - Entrada de filtrado 't' - ¡La tabla! 'i' - Información 'p' - Paginación 'r' - pRocessing si deja nuestra f por ejemplo, no mostrará el filtro –