rowGrouping中的fnRowCallback无效

时间:2015-09-24 13:12:16

标签: javascript jquery datatables

我的代码是这样的:

    ... 

    .rowGrouping({
                bExpandableGrouping: false,
                iGroupingColumnIndex: 2,
                bHideGroupingColumn: true,
                asExpandedGroups: [""],

                "fnRowCallback": function( nRow, aData, iDisplayIndex, iDisplayIndexFull ) {                  
                      $("td.group").css({
                           "background-color": aData.colour,
                      });
                }
    });

    ...

我需要fnRowCallback,因为我想获得colour参数。但它不起作用。

1 个答案:

答案 0 :(得分:1)

  

<强>原因

有关行分组的其他问题,请参阅my answer。通常,不再建议使用行分组插件

它不适合您,因为fnRowCallback是jQuery DataTables插件的选项,而不是Row Grouping插件,请参阅list of options的Row Grouping插件。

  

<强>解

使用CSS规则定位类.group

的行
.dataTable tr.group {
   background-color:#CCC;
}

如果需要动态设置行颜色分组,可以使用分组完成时调用的fnOnGrouped回调,分析组并对其进行适当着色。

fnOnGrouped: function(groups){
    console.log("Groups", groups);

    for(key in groups){
       if(groups.hasOwnProperty(key)){
           $(groups[key].nGroup).css('background-color', '#F99');
       }
    }                   
}
  

<强>样本

请参阅this jsFiddle以获取代码和演示。