好的,我正在处理一张 table 。我在这个特定的表上使用 rowGrouping。到目前为止,我在数据表方面没有遇到过严重问题。
我正在通过 php 呈现我的表格,然后在加载 DOM 时我在其上调用数据表。所以它创建了所有花哨的表格。花哨的部分效果很棒,并且大部分都符合预期。然而。我想通过 aoColumns
对象隐藏列,我想禁用对其他列的排序,以及所有其他列。其中我似乎做不到。所以我不确定在这种情况下该怎么做
这是我用于行分组的 JavaScript/数据表调用。
var oTable = $('#orgListings').dataTable({
"bAutoWidth": true,
"bRetrieve": true,
"bPaginate": false,
"aoColumns":
[
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false }
]
}).rowGrouping({
iGroupingColumnIndex: 1,
sGroupingColumnSortDirection: "asc",
iGroupingOrderByColumnIndex: 0,
bExpandableGrouping: true,
bExpandSingleGroup: true,
iExpandGroupOffset: -1
});
$('#orgListings_length, #orgListings_filter').hide()
$(window).bind('resize', function(){oTable.fnDraw();});
我的表与但不完全相同
<table>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
行分组似乎再次正常工作。但是 dataTable({...})
中的任何内容似乎都没有保留。分页尽管是假的仍然显示,自动宽度,尽管是真的不坚持将所有列变成不可排序的列不起作用。
所以我想知道我做错了什么?我该如何修复它
最佳答案
你可能想做这样的事情:
var nonSortableColumns = new Array(0, 1, 2, 3);
然后
"aoColumnDefs": [
{ "bSortable": false, "aTargets": nonSortableColumns }
],
关于php - 带有 rowGrouping 插件 aoColumns 定义的数据表失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12536208/