|
actionComplete(args: any) {
if (args.requestType === 'filtering') {
this.grid.pagerModule.pagerObj.enableExternalMessage = true;
// get the filtered column details
var filteredCols = (this.grid.filterModule as any).filterSettings.columns;
var filteredColsName = []
for (var i = 0; i < filteredCols.length; i++) {
if (filteredColsName.indexOf(filteredCols[i].field) < 0) {
// push the distinct filter column field in an array
filteredColsName.push(filteredCols[i].field);
}
}
// create a message using filtered columns field and its filter value which will be shown in the filter summary
var messagevl = '';
for (var j = 0; j < filteredColsName.length; j++) {
var colname = filteredColsName[j];
var values = '';
for (var k = 0; k < filteredCols.length; k++) {
if (filteredColsName[j] == filteredCols[k].field) {
if (k == filteredCols.length - 1) {
values = values + filteredCols[k].value
} else {
values = values + (filteredCols[k].value + ',')
}
}
}
if (j == filteredColsName.length - 1) {
messagevl = messagevl + (colname + ' - ' + values)
}
else {
messagevl = messagevl + (colname + ' - ' + values + ' &&')
}
}
// bind the custom message
this.grid.pagerModule.pagerObj.externalMessage = messagevl;
}
}
|