var datagrid; var SBGridProperties = {}; function createGrid(){ SBGridProperties.parentid = 'SBGridArea'; SBGridProperties.id = 'datagrid'; SBGridProperties.jsonref = 'calcData'; SBGridProperties.rowheader = ['seq','update']; SBGridProperties.selectmode = 'free'; SBGridProperties.extendlastcol = 'scroll'; SBGridProperties.columns = [ {caption : ['이름','이름'], ref : 'name', width : '80px', style : 'text-align:center', type : 'output'}, {caption : ['학번','학번'], ref : 'number', width : '100px', style : 'text-align:center', type : 'output'}, {caption : ['점수','국어'], ref : 'korean', width : '140px', style : 'text-align:center', type : 'input'}, {caption : ['점수','영어'], ref : 'english', width : '140px', style : 'text-align:center', type : 'input'}, {caption : ['점수','수학'], ref : 'math', width : '140px', style : 'text-align:center', type : 'input' }, {caption : ['합계','합계'], ref : 'sum', width : '130px', style : 'text-align:center;background-color:#ffffe1', type : 'output', calc : 'fnCalcSum'}, {caption :['평균','평균'], ref : 'avg', width : '200px', style : 'text-align:right;background-color:#fbe18e;font-weight:bold', type : 'output', calc : function(objGrid, nRow,nCol) { var nSum = Number(objGrid.getCellData(Number(nRow), objGrid.getColRef('sum'))); var strAvg = ((nSum / 3).toFixed(2)).toString(); return strAvg; } } ]; datagrid = _SBGrid.create(SBGridProperties); datagrid.bind('afteredit','fnAfterEdit'); }; function fnAfterEdit(){ if(datagrid.getPrevCol() == datagrid.getColRef('korean') || datagrid.getPrevCol() == datagrid.getColRef('english') || datagrid.getPrevCol() == datagrid.getColRef('math')){ datagrid.refresh(); } } function fnCalcSum(objGrid, nRow, nCol) { var nKorean = Number(objGrid.getData(Number(nRow), objGrid.getColRef('korean'))); var nEnglish = Number(objGrid.getData(Number(nRow), objGrid.getColRef('english'))); var nMath = Number(objGrid.getData(Number(nRow), objGrid.getColRef('math'))); var strSum = (nKorean + nEnglish + nMath).toString(); return strSum; }