我正在使用 DataTables行分组加载项。我通过选择框更改事件使用它。
代码
在PHP中:
<select id="Group-Discoveries" name="Group-Discoveries" class="input-medium">
<option value="">None</option>
<option value="6">Domain</option>
<option value="7">Type</option>
<option value="8">Category</option>
<option value="9">Status</option>
</select>
在JS中:
$(document).ready(function() {
var DTable = $('#discovery').dataTable( {
"sDom": "<'row-fluid'<'span3'<'toolbar'>><'span3'<'selectbar'>><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
"bPaginate": false
});
$('#Group-Discoveries').live('change', function(){
var index = $(this).val();
if(index == ''){
}
else{
DTable.rowGrouping({
"iGroupingColumnIndex": index,
"bHideGroupingColumn": false,
"bHideGroupingOrderByColumn": false,
"sGroupingClass":"group_"+index,
"bSetGroupingClassOnTR":true,
"bExpandableGrouping":true
});
}
});
});
我想在index
为空时删除 rowgrouping 。
感谢。
答案 0 :(得分:3)
我找到了解决方案 - 删除分组插件创建的绘制回调并重置组排序:
var oSettings = jQuery('#table').dataTable().fnSettings();
for (f = 0; f < oSettings.aoDrawCallback.length; f++) {
if (oSettings.aoDrawCallback[f].sName == 'fnRowGrouping') {
oSettings.aoDrawCallback.splice(f, 1);
break;
}
}
oSettings.aaSortingFixed = null;
希望这有帮助。