从DataSet构成网格行模型时,为只获取符合条件的数据行, 可以通过rowFilter属性并使用表达式或回调函数,指定行筛选器。 例如,在下列网格中,有指定只获取"10个前行 (top n)"、"10个后行 (bottom n)"或"只显示已修改的行"等筛选器。
grdMain.setRowFilter({
// expression
expression: "values['unit_price'] > 500 && values['quantity'] > 500", // values是v.1.3.9
callback: null
// or callback
expression: null,
callback: function (row) {
return row.getValue('unit_price') > 500 && row.getValue('quantity') > 500;
}
});
grdMain.setRowFilter({
callback: null,
expression: "row < 10"
});
grdMain.setRowFilter({
callback: null,
expression: "row >= rowcount - 10"
});
grdMain.setRowFilter({
expression: "state == 'u'",
callback: null
});
grdMain.setRowFilter({
expression: null,
callback: null
});
实际上,行筛选器是行模型通过RowFilter对象进行管理的。 而且,因为行筛选器适用在列筛选器之前,并且适用在非网格的行模型级别,所以将会反映到共享相同的行模型的所有网格。