我想更改数据表的可滚动区域的大小。
$('#example').dataTable({"sScrollY": 100});
//some stuff..
$('#example').dataTable({"sScrollY":101}); //wrong: cannot reinitialize
答案 0 :(得分:8)
$('.dataTables_scrollBody').css('height', 400);
答案 1 :(得分:4)
要更改Y Scroll,请使用以下代码
var objDataTable = $('#example').dataTable({"sScrollY" : 100});
objDataTable.fnSettings().oScroll.sY = 101;
objDataTable.fnDraw();
答案 2 :(得分:2)
如果yoy有几个数据表,你可以通过包装器访问每个数据表:
$('#example').dataTable({'sScrollY': 100});
//some stuff..
objDataTable.fnSettings().oScroll.sY = '225px';
$('#example_wrapper').children('.dataTables_scroll').children('.dataTables_scrollBody').css('height', '225px');
答案 3 :(得分:1)
对于jquery.dataTables 1.10.x:
$('div.dataTables_scrollBody').height( 400 );
根据Datatables文档,这是推荐的方法。根据相同的文档,不鼓励使用设置对象,因为它是内部的。
答案 4 :(得分:0)
我必须将两者结合起来解决我的问题。在我的情况下我想做无尽的分页,问题是在窗口调整大小后,dataTables_scrollBody的高度保持固定,所以我必须调整oScroll以用滚动条显示表数据。设置dataTables_scrollBody高度将在窗口大小更改时起作用,但在表重绘后,它将使用旧的sScrollY值回滚,并且Neo的代码修复此问题。 :)
objDataTable.fnSettings().oScroll.sY = 101;
objDataTable.fnDraw();
$('.dataTables_scrollBody').css('height', 400);