项目中的表现在是这样实现的:
<table datatable="" dt-options="vm.dtOptions" dt-columns="vm.dtColumns" class="table table-custom"></table>与此表相关的代码:
vm.dtColumns = [
DTColumnBuilder.newColumn('id', 'Login ID'),
DTColumnBuilder.newColumn('username', 'User Name'),
DTColumnBuilder.newColumn('email', 'Email'),
DTColumnBuilder.newColumn('usergrouproles', 'User Group Role'),
DTColumnBuilder.newColumn(null).withOption('defaultContent', '<button>button1</button><button>button2</button>').notSortable(),
DTColumnBuilder.newColumn(null).withOption('defaultContent', '<button>button3</button><button>button4</button><button>button5</button>').notSortable()
];
vm.dtOptions = DTOptionsBuilder
.newOptions()
.withBootstrap()
.withFnServerData(serverData)
.withDataProp('data')
.withOption('processing', true)
.withOption('serverSide', true)
.withOption('paging', true)
.withOption('rowCallback', function(row, data, index){
console.log("test rowCallback");
})
function serverData(sSource, aoData, fnCallback, oSettings) {
var draw = aoData[0].value;
var _order = aoData[2].value[0].dir.toUpperCase();
var _start = aoData[3].value;
var _end = _start + aoData[4].value;
var _sort = aoData[1].value[aoData[2].value[0].column].data;
UserSvc.getUsersPaginated(_start, _end, _order, _sort).then(function(result){
var records = {
'draw': draw,
'recordsTotal': result.length,
'recordsFiltered': result.totalCount,
'data': result
};
fnCallback(records);
});
}现在,除了User Group Role列数据是以对象的形式存在之外,看起来还不错,这就是为什么我需要使用ng-repeat在那里展开它。我知道我将最终申请initComplete回调,但我不知道如何执行扩展本身。我的意思是,我想在每个单元格中操作,但我只能访问整个行。我在vm.dtColumns中尝试了一个renderWith()函数,但它根本不起作用。你能告诉我正确的方向吗?
发布于 2016-01-28 02:20:14
我终于找到了。它是由.withOption('createdCell', withCreatedActionsCell)这样的createdCell选项管理的。
https://stackoverflow.com/questions/33918612
复制相似问题