2009-12-17 8 views

risposta

342

Per DataTable> = 1,10, uso:

$('table').dataTable({searching: false, paging: false}); 

per DataTable < 1.10, uso:

$('table').dataTable({bFilter: false, bInfo: false}); 

o utilizzando CSS puro:

.dataTables_filter, .dataTables_info { display: none; } 
+4

Buono come @antpaw commento è, e sembra funzionare nella maggior parte dei casi, non funziona se c'è un filtro in corso per ogni colonna, come in questo esempio: http: //datatables.net/release-datatables/extras/FixedColumns/col_filter.html. Sii consapevole! –

+0

@JanisPeisenieks L'URL di esempio è rotto: https://www.datatables.net/extensions/fixedcolumns/ – antpaw

+0

'filter: false' funziona per me, ora (2015-12-06). – zx1986

6

Un modo rapido e sporco è quello di scoprire la classe del piè di pagina e nasconderlo utilizzando jQuery o CSS:

$(".dataTables_info").hide(); 
+2

nascondiglio statico con jQuery isnt davvero buono – antpaw

0

Li poteva nascondere tramite CSS:

#example_info, #example_filter{display: none} 
+0

selettori errati – antpaw

+0

Non "sbagliato", semplicemente diverso. Dipende se vuoi nascondere tutte le istanze (per classe, come nella tua risposta), o una particolare istanza (per ID, come nella mia). – graphicdivine

4

se si utilizza themeroller:

.dataTables_wrapper .fg-toolbar { display: none; } 
+0

+1 Grazie, Questo mi ha indirizzato nella giusta direzione. Non volevo nascondere l'intestazione, quindi volevo solo il piè di pagina. le classi ui-corner-bl e ui-corner-br vengono applicate solo al footer, quindi ho usato uno dei due per ottenere il wrapper del footer ........ $ (". ui-corner-bl").nascondere(); – Kevbo

77

Partenza http://www.datatables.net/examples/basic_init/filter_only.html per un elenco di funzionalità per mostra nascondi.

Quello che vuoi è impostare "bFiltro" e "bInfo" su falso;

$(document).ready(function() { 
    $('#example').dataTable({ 
     "bPaginate": false, 
     "bFilter": false, 
     "bInfo": false 
       }); 
}); 
+1

+1 per il collegamento alla documentazione – Barett

+0

@Eric grazie per il suo funzionamento per me, ma voglio mostrare "bPaginate" solo non voglio mostrare "binfo" come posso implementare se ho fatto "bInfo" = falso e " bPaginate "= true allora entrambi stanno mostrando – amit

31

Potete anche non ritirare l'intestazione o piè di pagina a tutti impostando sDom: http://datatables.net/usage/options#sDom

'sDom': 't' 

visualizzerà solo il tavolo, senza intestazioni o piè di pagina o altro.

E 'discusso alcuni qui: http://www.datatables.net/forums/discussion/2722/how-to-hide-empty-header-and-footer/p1

+1

Questo è stato fantastico! – zmanc

+1

Questo dovrebbe essere aggiunto alla risposta di antampa. Questo nasconde in modo affettivo il filtro e le informazioni segnaposto div che rimangono quando si passa "bFiltro": falso, "bInfo": falso. –

+0

Rimuove l'impaginazione nel piè di pagina. Non penso sia una buona pratica. – Anirudh

0

ho fatto questo assegnando footer un id e poi lo styling usando i CSS:

<table border="1" class="dataTable" id="dataTable_${dtoItem.key}" > 
    <thead> 
     <tr> 
      <th></th> 

     </tr> 
    </thead> 
<tfoot> 
    <tr> 
      <th id="FooterHidden"></th> 
    </tr> 
</tfoot> 
<tbody> 

    <tr> 

       <td class="copyableField"></td> 

    </tr> 
</tbody> 
</table> 

poi lo styling usando i CSS:

#FooterHidden{ 
    display: none; 
} 

Come sopra i modi menzionati non funzionano per me.

1

È possibile utilizzare l'attributo sDom. Il codice sembra qualcosa del genere.

$(document).ready(function() { 
    $('#example').dataTable({ 
     'sDom': '"top"i' 
       }); 
}); 

nasconde ricerca e cercapersone scatola.

3

Qui è possibile aggiungere all'elemento sDom il codice, la barra di ricerca in alto è nascosta.

$(document).ready(function() { 
    $('#example').dataTable({ 
"sDom": '<"top">rt<"bottom"flp><"clear">' 
}); 
}); 
1

Come detto da @ Scott Stafford sDOM è la proprietà più Appropiato per mostrare, nascondere o spostare gli elementi che compongono le DataTable. Penso che lo sDOM non sia aggiornato, con la patch effettiva che questa proprietà è ora dom.

Questa proprietà consente di impostare qualche classe o id per un elemento, in modo da rendere più semplice l'aspetto.

Controllare la documentazione oficial qui: https://datatables.net/reference/option/dom

Questo esempio potrebbe mostrare solo la tabella:

$('#myTable').DataTable({ 
    "dom": 't' 
}); 
13

Se si utilizza filtro personalizzato, si potrebbe desiderare di nascondere casella di ricerca, ma ancora voglia di abilitare la funzione filtro, quindi bFilter: false non è la via. Utilizzare invece dom: 'lrtp', il valore predefinito è 'lfrtip'. Documentazione: https://datatables.net/reference/option/dom

3

Questo può essere fatto semplicemente cambiando la configurazione:

$('table').dataTable({ 
     paging: false, 
     info: false 
}); 

Ma per nascondere il piè di pagina vuota; questo pezzo di codice fa il trucco:

$('table').dataTable({ 
     paging: false, 
     info: false, 

     //add these config to remove empty header 
     "bJQueryUI": true, 
     "sDom": 'lfrtip' 

}); 
0

Penso che il modo più semplice è:

<th data-searchable="false">Column</th> 

È possibile modificare solo la tabella è necessario modificare, senza cambiare comune CSS o JS.

4
var table = $("#datatable").DataTable({ 
    "paging": false, 
    "ordering": false, 
    "searching": false 
}); 
0

Solo un promemoria non è possibile inizializzare DataTable sullo stesso <table> elemento due volte.

Se si verifica lo stesso problema quindi è possibile impostare searching e paging falso durante l'inizializzazione DataTable sul tuo HTML <table> come questo

$('#tbl').DataTable({ 
    searching: false, 
    paging: false, 
    dom: 'Bfrtip', 
    buttons: [ 
     'copy', 'csv', 'excel', 'pdf', 'print' 
    ] 
});