如何使用 ag-grid in-built 列过滤来过滤组合值
How to filter combined values using ag-grid in-built column filtering
我有一个这样的列定义。我合并了多个值以在标题列中显示为标题。但是每当我在列过滤器中键入内容时,内置列过滤都会返回空行。我在这里做错了什么。为什么列过滤不适用于组合值。如何实现。
title: {
minWidth: 90,
cellClassRules: {
'completedFieldClass': function(params) {
return params.value && params.value.completed;
}
},
cellStyle: getCellStyle,
cellRenderer: function(params) {
var prqId = params.data.id;
var type = (!!params.data.type) ? params.data.type.value + ': ' : '';
var desc = (!!params.data.id) ? '- '+params.data.description : '';
if(!!params.data.access){
var concatTitle = '<a>';
concatTitle = concatTitle + '<strong>'+type+'</strong><span>'+params.value.value+'</span>';
concatTitle = concatTitle + '<span>'+desc+'</span></a>';
return concatTitle;
} else{
var concatTitle = '<span class="notprint">';
concatTitle = concatTitle + '<strong>'+type+'</strong><span>'+params.value.value+'</span>';
concatTitle = concatTitle + '<span>'+desc+'</span></span>';
return concatTitle;
//return '<span class="notprint">' + modValue + ''+ configDesc +'</span>';
}
},
sortable: false
},
提前致谢
默认情况下,内置过滤器将查看单元格值 - 要覆盖它,您可以编写自己的 Custom Filter,或使用 valueGetter。
在您的特定情况下,使用 valueGetter 可能最简单,如下所示:
...
cellStyle: getCellStyle,
valueGetter: function(params) {
// for example - you should extract your field logic and use it here too
return params.data.id + params.data.access;
},
cellRenderer: function(params) {
...
我有一个这样的列定义。我合并了多个值以在标题列中显示为标题。但是每当我在列过滤器中键入内容时,内置列过滤都会返回空行。我在这里做错了什么。为什么列过滤不适用于组合值。如何实现。
title: {
minWidth: 90,
cellClassRules: {
'completedFieldClass': function(params) {
return params.value && params.value.completed;
}
},
cellStyle: getCellStyle,
cellRenderer: function(params) {
var prqId = params.data.id;
var type = (!!params.data.type) ? params.data.type.value + ': ' : '';
var desc = (!!params.data.id) ? '- '+params.data.description : '';
if(!!params.data.access){
var concatTitle = '<a>';
concatTitle = concatTitle + '<strong>'+type+'</strong><span>'+params.value.value+'</span>';
concatTitle = concatTitle + '<span>'+desc+'</span></a>';
return concatTitle;
} else{
var concatTitle = '<span class="notprint">';
concatTitle = concatTitle + '<strong>'+type+'</strong><span>'+params.value.value+'</span>';
concatTitle = concatTitle + '<span>'+desc+'</span></span>';
return concatTitle;
//return '<span class="notprint">' + modValue + ''+ configDesc +'</span>';
}
},
sortable: false
},
提前致谢
默认情况下,内置过滤器将查看单元格值 - 要覆盖它,您可以编写自己的 Custom Filter,或使用 valueGetter。
在您的特定情况下,使用 valueGetter 可能最简单,如下所示:
...
cellStyle: getCellStyle,
valueGetter: function(params) {
// for example - you should extract your field logic and use it here too
return params.data.id + params.data.access;
},
cellRenderer: function(params) {
...