我有一个包含大量列的表,有些行可能有未定义的值,所以我想根据列显示默认文本而不是空单元格。我该如何设置该值?
我希望这样的事情:
columnDefs: [
{name: 'Code', field: 'code', default: 'My default value for code column'},
{name: 'Name', field: 'name', default: 'My default value for name column'}
];
由于
答案 0 :(得分:2)
是的,你可以使用cellTemplate
,看起来,它最容易:
columnDefs: [
{name: 'Code', field: 'code', cellTemplate:'<div>{{row.entity.code="My default value for code column"}}</div>'},
{name: 'Name', field: 'name', cellTemplate:'<div>{{row.entity.name="My default value for name column"}}</div>'}
];
答案 1 :(得分:1)
使用cellTemplates
:
var codeTemplate = '<div ng-if="row.entity.code">{{row.entity.code}}</div>' +
'<div ng-if="!row.entity.code">My Default Value for code column</div>';
var nameTemplate = '<div ng-if="row.entity.name">{{row.entity.name}}</div>' +
'<div ng-if="!row.entity.name">My Default Value for name column</div>';
$scope.gridOptions = {
enableSorting: true,
columnDefs: [{
name: 'Code',
field: 'code',
cellTemplate: codeTemplate
}, {
name: 'Name',
field: 'name',
cellTemplate: nameTemplate
}],
data: [{
"code": "122",
"name": "Maximus"
}, {
"code": "123",
"name": "Minimus"
}, {
"code": null,
"name": "Nocodeus"
}, {
"code": '',
"name": "Emptyus"
}, {
"code": '124',
"name": ""
}, {
"code": '',
"name": ""
}]
};
示例是here
答案 2 :(得分:1)
我通过将表达式应用于valueFormatter来实现了
{{1}}
我认为也可以通过将表达式应用于valueGetter来实现