gridLib/jqGrid

데이터 가져오기(getRowData, getGridParam('data'), getLocalRow)

dddzr 2023. 11. 14. 13:46

 

getRowData

getRowData 함수는 현재 페이지에 표시된 행들의 데이터만을 가져옵니다.
hidden 컬럼의 데이터는 가져오지 않습니다.

그리드에 표시된 컬럼 순서 그대로(colModel과 같은 순서) 가져옵니다. 

var data = $("#"+gridId).jqGrid("getRowData");

//모든 데이터를 들고오는 코드
let grid = $("#" + gridId);
let currPage = grid.jqGrid('getGridParam', 'page');
let lastPage = grid.jqGrid('getGridParam', 'lastpage');
var allData = [];
for(let i = 1; i <= lastPage; i++ ){
  grid.jqGrid('setGridParam', { page: i }).trigger('reloadGrid');
  allData = allData.concat($("#child-" + gridID).jqGrid("getRowData"));
}
grid.jqGrid('setGridParam', { page: currPage }).trigger('reloadGrid');

 

getGridParam('data')

getGridParam('data') 함수는 loadonce 옵션이 true로 설정되었을 때, 한 번에 가져온 전체 데이터를 반환합니다.
loadonce 옵션이 false이거나 서버에서 페이징을 처리하도록 설정되어 있을 경우에는 null을 반환합니다.

hidden 컬럼의 데이터도 포함되고 grid컬럼에 없지만 데이터로 들고온 필드도 포함됩니다.

var data = $("#" + gridId).jqGrid('getGridParam', 'data');

 

getLocalRow

getLocalRow를 사용하여 해당 행의 데이터를 가져올 수 있습니다.

var rowId = $("#" + gridId).jqGrid('getGridParam', 'selrow');
var rowData = $("#" + gridId).jqGrid('getLocalRow', rowId);