我正在使用jQuery数据表。

我想删除默认情况下添加到表中的搜索栏和页脚(显示有多少行可见)。我只是想用这个插件来排序。这能做到吗?


当前回答

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

其他回答

提醒一下,你不能在同一个<table>元素上初始化DataTable两次。

如果你遇到同样的问题,那么你可以在初始化HTML <table>上的DataTable时将搜索和分页设置为false

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

正如@Scott Stafford所说,sDOM是最适合显示、隐藏或重新定位组成数据表的元素的属性。我认为sDOM现在已经过时了,在实际的补丁中,这个属性现在是dom。

这个属性还允许为一个元素设置一些类或id,所以你可以更容易地设计风格。

查看官方文档:https://datatables.net/reference/option/dom

这个例子只显示表:

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

一个快速而肮脏的方法是找出页脚的类,并使用jQuery或CSS隐藏它:

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

对于数据表>=1.10,使用:

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

如果你仍然想要这个插件的.search()函数,你需要用dom设置“隐藏”搜索栏html:

$('table').dataTable({dom: 'lrt'});

默认值是lfrtip或<"H"lfr>t<"F"ip>(当jQueryUI为true时),F char表示dom中的过滤(搜索)html, ip表示信息和分页(页脚)。

对于<1.10的数据表,使用:

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

或者使用纯CSS:

.dataTables_filter, .dataTables_info { display: none; }

在这里你可以添加到sDom元素到你的代码,顶部搜索栏是隐藏的。

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