Angularjs 角度数据表v0.4.0中的行分组
我试图在angular datable()的当前版本中使用行分组,但没有得到如何实现它的任何线索。我有一个json数据,其格式如下:Angularjs 角度数据表v0.4.0中的行分组,angularjs,datatable,Angularjs,Datatable,我试图在angular datable()的当前版本中使用行分组,但没有得到如何实现它的任何线索。我有一个json数据,其格式如下: vm.data=[ { 'groupName': 'Match 1', 'content':[{'id': 1, 'name': abc'}] } ] 这是html的外观: 我不知道接下来会发生什么。我在其他问题中发现,有一个建议使用event:dataTableLoaded on$scope,但似乎eventit在当前版本中不可
vm.data=[
{
'groupName': 'Match 1',
'content':[{'id': 1, 'name': abc'}]
}
]
这是html的外观:
我不知道接下来会发生什么。我在其他问题中发现,有一个建议使用event:dataTableLoaded on$scope,但似乎eventit在当前版本中不可用。有什么建议吗?我没有使用过那个版本的datatables,但这对我来说很有用
$scope.dtOptions = DTOptionsBuilder
.fromFnPromise(reportService.getReportData($scope.reportInfo,
$scope.model))
.withPaginationType('full_numbers')
.withOption('fnDrawCallback',
function(oSettings) {
var api = this.api();
var rows = api.rows({ page: 'current' }).nodes();
var last = null;
api.column(0, { page: 'current' })
.data()
.each(function(group, i) {
if (last !== group) {
$(rows)
.eq(i)
.before(
'<tr class="group"><td colspan="5">' + group + '</td></tr>');
last = group;
}
});
})
$scope.dtOptions=DTOptionsBuilder
.fromfnomise(reportService.getReportData($scope.reportInfo,
$scope.model)
.withPaginationType('完整编号')
.withOption('fnDrawCallback',
功能(oSettings){
var api=this.api();
var rows=api.rows({page:'current'}).nodes();
var last=null;
列(0,{page:'current'})
.data()
.每个功能(组,i){
如果(最后!==组){
$(行)
.eq(i)
.以前(
''+组+'';
last=组;
}
});
})
只需在数据表中再添加一个withOption即可。columIndex将列的索引放在您要进行分组的位置。这是我在angular datatables v0.6.x中的工作
.withOption('fnDrawCallback', function (oSettings) {
var api = this.api();
var rows = api.rows( {page:'current'} ).nodes();
var last=null;
columIndex = 1
api.column(columIndex, {page:'current'} ).data().each( function ( group, i ) {
if ( last !== group ) {
colspan = Object.keys($scope.dtColumnPermission).length ;
$(rows).eq( i ).before(
'<tr class="groupColumns"><td colspan="'+colspan+'">'+group+'</td></tr>'
);
last = group;
}
} );
})
.withOption('fnDrawCallback',函数(oSettings){
var api=this.api();
var rows=api.rows({page:'current'}).nodes();
var last=null;
columIndex=1
列(columIndex,{page:'current'}).data().each(函数(组,i){
如果(最后!==组){
colspan=Object.keys($scope.dtcolumnpowmission).length;
$(行).eq(i).之前(
''+组+''
);
last=组;
}
} );
})
这对我使用角度数据表有效“^8.0.0”
抽回
this.dtOptions={
长度菜单:[5,10,15,25],
页长:5,
订购:错,
处理:对,
搜索:假,
drawCallback(设置){
console.log(“设置为”,设置为)
var api=this.api();
var rows=api.rows({page:'current'}).nodes();
log(“行是”,行);
var last=null;
常数指数=0;
列(columIndex,{page:'current'}).data().each(函数(组,i){
如果(最后!==组){
$(行).eq(i).之前(
“+”+组+”
);
last=组;
}
});
}
};
this.dtOptions = {
lengthMenu: [5, 10, 15, 25],
pageLength: 5,
ordering: false,
processing: true,
searching: false,
drawCallback(setting) {
console.log("setting is ", setting)
var api = this.api();
var rows = api.rows({ page: 'current' }).nodes();
console.log("rows is ", rows);
var last = null;
const columIndex = 0;
api.column(columIndex, { page: 'current' }).data().each(function (group, i) {
if (last !== group) {
$(rows).eq(i).before(
'<tr style="color: crimson !important;background-color: blanchedalmond;" class="groupColumns"><td style="display: none;"></td><td>' + " " + group + '</td><td></td></tr>'
);
last = group;
}
});
}
};