Я реализовал простую функцию сортировки.
Благодаря этой статье
Теперь я хотел бы сохранить одну строку фиксированной и отсортировать другие строки.
(например, строка total
должна быть зафиксирована внизу.)
Это мой код,
Когда я щелкаю столбец сортировки, dataView.sort
выглядит как вызываемый для каждой строки.
setSort(){ // I implemented function as class function
var self = this;
this.grid.onSort.subscribe(function (e, args) {
var cols = args.sortCols;
self.dataView.sort(function (dataRow1, dataRow2) {
for (var i = 0, l = cols.length; i < l; i++) {
var field = cols[i].sortCol.field;
var sign = cols[i].sortAsc ? 1 : -1;
var value1 = dataRow1[field], value2 = dataRow2[field];
var result = (value1 == value2 ? 0 : (value1 > value2 ? 1 : -1)) * sign;
if (result != 0) {
return result;
}
}
return 0;
});
self.grid.invalidate();
self.grid.render();
});
}