SMART datagrid v1.4 > Examples

Back  Forward

Row Filtering  Example

DataSet으로 부터 그리드행 모델들을 구성할 때, 조건에 맞는 데이터행들만 가져올 수 있도록 rowFilter 속성을 통해 수식이나 콜백 함수로 행 필터를 지정할 수 있다. 예를 들어 아래 그리드에서 "처음 10행 (top n)", "마지막 10행 (bottom n)" 만 가져오기, 또는 "수정된 행들만 표시하기" 필터를 지정하고 있다. 

Grid - 1
rows

   

Code -1
    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;
    	}
    });

 

Code -2
    grdMain.setRowFilter({
    	callback: null,
    	expression: "row < 10"
    });

 

Code -3
    grdMain.setRowFilter({
    	callback: null,
    	expression: "row >= rowcount - 10"
    });

  

Code -4
    grdMain.setRowFilter({
        expression: "state == 'u'",
        callback: null
    });

  

Code -5
    grdMain.setRowFilter({
    	expression: null,
    	callback: null
    });

실제로 Row Filter는 행 모델 쪽에서 RowFilter 객체로 관리한다. 또, 행 필터는 컬럼 필터들 이전에 적용되고, 그리드가 아니라 행 모델 수준에서 적용되므로 같은 행 모델을 공유하는 모든 그리드의 표시에 반영된다. 

소스보기 JSP 

See Also
RowFilter
GridBase.rowFilter
Examples
Column Filtering