-
JqGrid "setCell"을 통해 validate check후 grid 테두리 색깔주기자바웹프로그래밍/jQuery 2021. 1. 4. 18:43728x90반응형
1. SetCell
Jqgrid를 이용하여 row를 db에 저장할때 필수 cell값이 비어있을경우나 cell내용이 validate check의 어긋났을경우에 특정 cell에 css를 입혀 사용자가 focus할수있도록 할수있다.
function checkItem(jqid,Items) { var flag = false var validcount =0; var colNames = {} var cm = null; var checkcol = [] if(jqid==="jqGrid"){ checkcol=['a','b','c'] } var rowData = $("#"+jqid).getRowData(); for (var j=0;j<rowData.length;j++){ for (var i = 0; i < checkcol.length; i++) { if(rowData[j][checkcol[i]].replace(/ /gi,"").length<1){ $("#"+jqid).jqGrid('setCell',String(j+1),checkcol[i],"",{border : '3px solid red'}); validcount++; } }
필자의 경우에는 여러 jqgrid를 한 함수에서 공통으로 사용하기 위해 jqid를 받았다.
일단 checkcol 변수에 자신이 validate check를할 컬럼들을 넣고
getRowData()를 통해 모든 row에 대해 검색을 하여
rowData[j][checkcol[i]].replace(/ /gi,"").length<1
각각의 cell length가 1 이하 즉, 빈 셀이라면
$("#"+jqid).jqGrid('setCell',String(j+1),checkcol[i],"",{border : '3px solid red'});
setcell 을 통해 border 값을 3px solid red를 하여 테두리에 색깔을 입혔다.
{border : '3px solid red'}; 이부분에 자신이 원하는 css를 줄수있다 가령
{color : 'red'}; 로 주게 되면 font 색깔이 바뀐다.
728x90반응형'자바웹프로그래밍 > jQuery' 카테고리의 다른 글
jqgrid editcell 중 cell을 doubleclick 할 경우 input박스가 저장될경우 해결방안 (0) 2021.01.06 jQgrid 자주사용하는 모음들 정리 afterEditCell,afterSaveCell 응용 (0) 2021.01.05