我正在使用 jquery Datatables 插件 (http://www.datatables.net) 并且需要显示许多列 (75+) 和一些 <50 行。为了让用户更轻松,我使用了出色的插件 FixedColumns。我没有使用任何分页和排序(这会使这变慢,并且实际上不需要最多 50 行的分页)
在 IE9 中,表格的呈现速度太慢(>7 秒),所以现在我使用来自 PHP 的 JSON 数据检索数据服务器端。这加快了速度,但现在我遇到了一个问题。我的表头有两行,第一行有一个 colspan,第二行有列数作为数据。
不知何故,我不能以这种方式在表内使用 THEAD,并且“aoColumns”参数看起来不支持多行列。有人知道我如何使用多行 THEAD(包括 colspan)和使用 ajax 获取数据吗?
我正在使用此代码来构建表格。
var defaultOptions = {
"sScrollX": "100%",
"bScrollCollapse": false,
"sHeightMatch": "none",
"bPaginate": false,
"bLengthChange": false,
"bSortClasses": false,
"bSort":false,
"bFilter": false,
"bSort": false,
"bInfo": false,
"bAutoWidth": false,
"bServerSide": false,
"bProcessing":true,
"bDeferRender": false,
"sAjaxSource": "/leerkracht/controle_data.php",
"fnServerParams": function ( aoData ) {
aoData.push( { "name":"groep", "value":"56"} );
},
"oLanguage": {
"sProcessing": "<div style='margin-top:7px;margin-bottom:7px;'><img src='/images/ajax-loader.gif' style='margin-right:7px;'/>Bezig met ophalen scores...</div>", "sLengthMenu": "_MENU_ resultaten weergeven", "sZeroRecords": "Geen resultaten gevonden", "sInfo": "_START_ tot _END_ van _TOTAL_ resultaten", "sInfoEmpty": "Geen resultaten om weer te geven", "sInfoFiltered": " (gefilterd uit _MAX_ resultaten)", "sInfoPostFix": "", "sSearch": "Zoeken:", "sEmptyTable": "Geen resultaten aanwezig in de tabel", "sInfoThousands": ".", "sLoadingRecords": "Een moment geduld aub - bezig met laden...", "oPaginate": { "sFirst": "Eerste", "sLast": "Laatste", "sNext": "Volgende", "sPrevious": "Vorige" }
}
}
var oTable = $('#controleTable').dataTable(defaultOptions );
new FixedColumns( oTable );
我真的希望有一个像Scroller这样的插件用于水平滚动(滚动后执行 ajax 调用并重绘“新”列和“新数据”)......