jqgrid 복수의 컬럼 row 합치기
loadComplete : function (data){
$("input[type=radio]").prop('disabled', true); //radio disabled
var allRows=$("#grid").jqGrid('getGridParam','records');
initPage("grid",allRows,"");
var ids = jQuery("#grid").jqGrid('getDataIDs');
var gridData = $("#grid").jqGrid('getRowData');
var grid = $("#grid");
var addColName=[1,2,3,4,5];
$.each(addColName, function(index, colName) {
console.log("인덱스: " + index + ", 값: " + colName);
var prevCellVal = { cellId: undefined, value: undefined };
var cellIndex = $("#grid").getGridParam('colModel').findIndex(function(col) { return col.name === colName; });
// console.log('cellIndex:'+cellIndex);
var i, rowId, cellValue, rowspan;
if(cellIndex<9){
for (i = 0; i < ids.length; i++) {
rowId = ids[i];
cellValue = grid.jqGrid('getCell', rowId, colName);
// console.log('ids:'+i+"--"+cellValue); // 이전 값과 현재 셀 값이 같으면 병합합니다.
if (cellValue === prevCellVal.val) {
rowspan = $("#" + prevCellVal.id).children('td').eq(cellIndex).attr("rowspan") || 1;
rowspan = Number(rowspan)+1;
$("#" + prevCellVal.id).children('td').eq(cellIndex).attr("rowspan", rowspan); // 이전 셀의 rowspan을 증가
$("#" + rowId).children('td').eq(cellIndex).hide(); // 현재 셀을 삭제 hide가
} else {
prevCellVal = { val: cellValue, id: rowId }; // 새로운 셀 값이면 시작 id를 업데이트
}
}
}
});
},
댓글
댓글 쓰기