JQuery数据表根据记录数禁用/删除行计数选项

时间:2013-10-08 14:30:28

标签: datatables

默认情况下,datatables有4种大小的记录显示:10,25,50,100。 无论表中有多少条记录,默认情况下都可以使用所有选项。

如果表有18个条目,则有任何选项可以从下拉列表中禁用或删除50和100。 或者如果记录小于10则禁用行计数。

我在文档中找不到其中任何一个。

1 个答案:

答案 0 :(得分:1)

您可以通过aLengthMenu设置

修改长度菜单
$('#example').dataTable({
   aLengthMenu : [5, 10, 25, 50]
});

要动态更改菜单,您必须在代码中访问生成的<select>框。它有一个名称,它总是表id + _length,所以带有id示例的表将有一个名为example_length的长度菜单

这是一个例子,动态改变长度菜单只保持5和10

var dataTable = $('#example').dataTable();
var newLength = [5, 10];
var aLengthMenu = $('select[name=example_length]');
$(aLengthMenu).find('option').remove();
for (var i=0;i<newLength.length;i++) {
  $(aLengthMenu).append('<option value="'+newLength[i]+'">'+newLength[i]+'</option>');
}

要禁用菜单,只需添加已禁用的属性

即可
$(aLengthMenu).prop('disabled', 'disabled');

使用上面代码http://jsfiddle.net/Mz5WZ/

的工作演示