3

我正在使用DataTables Row Grouping Add-on。我通过选择框更改事件使用它。

代码

在 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

谢谢。

4

1 回答 1

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;

希望这可以帮助。

于 2013-02-21T18:50:02.627 回答