编辑:
查看最新Fiddle http://jsfiddle.net/ruslans_uralovs/zDaGk/使用“固定标题”:
The Fiddle http://jsfiddle.net/hDgHs/.
解决方案之一是自己实现滚动,而不是让 DataTables 插件为您实现。
我采用了您的示例并注释掉了 sScrollX 选项。当此选项不存在时,DataTables 插件将简单地将您的表按原样放入容器 div 中。该表将伸出屏幕,因此,为了解决这个问题,我们可以将其放入具有所需宽度和溢出属性集的 div 中 - 这正是最后一个 jQuery 语句的作用 - 它将现有表包装到 300px 宽的 div 中。您可能根本不需要设置环绕 div 的宽度(在本例中为 300px),我在这里设置了它,以便可以轻松看到剪切效果。
友善一点,不要忘记用类替换内联样式。
$(document).ready(function() {
var stdTable1 = $(".standard-grid1").dataTable({
"iDisplayLength": -1,
"bPaginate": true,
"iCookieDuration": 60,
"bStateSave": false,
"bAutoWidth": false,
//true
"bScrollAutoCss": true,
"bProcessing": true,
"bRetrieve": true,
"bJQueryUI": true,
//"sDom": 't',
"sDom": '<"H"CTrf>t<"F"lip>',
"aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
//"sScrollY": "500px",
//"sScrollX": "100%",
"sScrollXInner": "110%",
"fnInitComplete": function() {
this.css("visibility", "visible");
}
});
var tableId = 'PeopleIndexTable';
$('<div style="width: 300px; overflow: auto"></div>').append($('#' + tableId)).insertAfter($('#' + tableId + '_wrapper div').first())});