문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판이전 판다음 판 | 이전 판 | ||
| white:ibsheet_dynamic [2018/10/10 08:01] – taekgu | white:ibsheet_dynamic [2025/04/15 10:05] (현재) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 줄 49: | 줄 49: | ||
| | | ||
| ]; | ]; | ||
| - | for (const [key, value] of answerCol.entries()) { | + | //for (const [key, value] of answerCol.entries()) { // IE에서 작동안함 |
| + | answerCol.forEach(function(value){ | ||
| tmpHeaderRow1 += " | tmpHeaderRow1 += " | ||
| bodyRow.push({Type:" | bodyRow.push({Type:" | ||
| 줄 73: | 줄 74: | ||
| var myData = []; | var myData = []; | ||
| // myData준비하자 | // myData준비하자 | ||
| - | for (const [key, value] of mAnswer.entries()) { | + | //for (const [key, value] of mAnswer.entries()) { // IE에서 작동안함 |
| + | mAnswer.forEach(function(value){ | ||
| myData[value.myOrder] = value; | myData[value.myOrder] = value; | ||
| } | } | ||
| 줄 81: | 줄 83: | ||
| $(' | $(' | ||
| } | } | ||
| + | </ | ||
| + | ===== 동적트리 ===== | ||
| + | <code html> | ||
| + | < | ||
| + | $( document ).ready( function(){ | ||
| + | }); | ||
| + | function mySheet1_OnSmartResize(Width, | ||
| + | //변경된 정보에 따라 컬럼들의 너비를 재조정한다. | ||
| + | mySheet1.FitColWidth(); | ||
| + | } | ||
| + | |||
| + | //동적 LIST 생성 , list <- IBSheet ID | ||
| + | var lastCol; | ||
| + | var orgTreeCols; | ||
| + | function listReset(){ | ||
| + | var requestObject = { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } ] | ||
| + | } | ||
| + | }; | ||
| + | |||
| + | execute( " | ||
| + | var data = obj[ " | ||
| + | var cnt = data.length; | ||
| + | |||
| + | var colInfo = []; | ||
| + | var headerInfo = ""; | ||
| + | var headerInfo2 = ""; | ||
| + | |||
| + | lastCol = (lastCol == undefined) ? mySheet1.LastCol() : lastCol; | ||
| + | for(var j = 0; j <= lastCol; j++){ | ||
| + | headerInfo += mySheet1.GetCellText(0, | ||
| + | headerInfo2 += mySheet1.GetCellText(0, | ||
| + | |||
| + | colInfo[j] = { Type: | ||
| + | Width: | ||
| + | SaveName: | ||
| + | Align: | ||
| + | Edit: | ||
| + | Hidden: | ||
| + | MultiLineText: | ||
| + | Wrap: | ||
| + | TreeCol: | ||
| + | KeyField: | ||
| + | ColMerge: | ||
| + | }; | ||
| + | } | ||
| + | |||
| + | var dynamicColInfo = []; | ||
| + | orgTreeCols = []; | ||
| + | for(var i = 0 ; i < cnt; i++){ | ||
| + | orgTreeCols.push(data[i][' | ||
| + | headerInfo += data[i][' | ||
| + | headerInfo2 += data[i][' | ||
| + | dynamicColInfo[i] = {Type:" | ||
| + | } | ||
| + | |||
| + | headerInfo = headerInfo.substring(0, | ||
| + | headerInfo2 = headerInfo2.substring(0, | ||
| + | |||
| + | var headers = [{ Text: headerInfo, Align:" | ||
| + | | ||
| + | | ||
| + | var info = { Sort: | ||
| + | var cols = " | ||
| + | cols += JSON.stringify( colInfo ).replace(" | ||
| + | if(dynamicColInfo.length > 0){ | ||
| + | cols += ", " + JSON.stringify( dynamicColInfo ).replace(" | ||
| + | } | ||
| + | cols += " | ||
| + | |||
| + | // | ||
| + | cols = JSON.parse( cols ); | ||
| + | |||
| + | mySheet1.Reset(); | ||
| + | // 2018.08.24 (LMY) 테마 적용 | ||
| + | var theme = " | ||
| + | |||
| + | if( theme != null || theme != '' | ||
| + | mySheet1.SetTheme(theme, | ||
| + | else | ||
| + | mySheet1.SetTheme(' | ||
| + | |||
| + | mySheet1.SetConfig({SearchMode: | ||
| + | mySheet1.InitHeaders( headers, info ); | ||
| + | mySheet1.InitColumns( cols ); | ||
| + | mySheet1.SetDataRowHeight(35); | ||
| + | // | ||
| + | |||
| + | var colslength = dynamicColInfo.length +lastCol; | ||
| + | var scols = lastCol + 1; | ||
| + | |||
| + | mySheet1.SetEditable(0); | ||
| + | |||
| + | // | ||
| + | }, function(actionType, | ||
| + | alert(" | ||
| + | }, false); | ||
| + | } | ||
| + | </ | ||
| </ | </ | ||