diff --git a/src/main/webapp/WEB-INF/views/web/input/layerInfo/layerInfo.jsp b/src/main/webapp/WEB-INF/views/web/input/layerInfo/layerInfo.jsp index 6571a0af..a85907ce 100644 --- a/src/main/webapp/WEB-INF/views/web/input/layerInfo/layerInfo.jsp +++ b/src/main/webapp/WEB-INF/views/web/input/layerInfo/layerInfo.jsp @@ -478,7 +478,7 @@ function fn_grid_refresh(){ { field: "layerEngName", title: "지층명", width:120, - attributes: { "class": "teacherName", style:"text-align: left" }, + attributes: { "class": "teacherName", style:"text-align: left"}, editor: comboEditor, //template: "#=layerEngName.label#", template: "#=getTeacherName((layerEngName == null) ? ' ' : layerEngName)#", @@ -504,7 +504,7 @@ function fn_grid_refresh(){ title: "현장기술", attributes: { style:"text-align: left" }, editor: textareaEditor, - template: "
#= (layerDesc == null) ? ' ' : layerDesc #
" + template: "
#= (layerDesc == null) ? ' ' : layerDesc #
" }, ], scrollable: true, @@ -561,7 +561,7 @@ function fn_grid_refresh(){ } function textareaEditor(container, options) { - kendoJQuery('').appendTo(container); + kendoJQuery('').appendTo(container); }; // 콤보박스 value = [object Object]일때 셀렉트(selectedValue) 값 넘기기 @@ -573,7 +573,7 @@ function fn_grid_refresh(){ // 그리드 콤보박스 에디트 function comboEditor(container, options) { var data = JSON.parse(JSON.stringify(arrLayerEng)); - kendoJQuery('') + var myComboEditor = kendoJQuery('') .appendTo(container) .kendoDropDownList({ dataValueField: "code", @@ -587,9 +587,13 @@ function fn_grid_refresh(){ selectedValue = this.value(); fn_selectedValue(selectedValue); }, - height: 300 + height: 500 }); + + var dropDownListWidget = myComboEditor.data("kendoDropDownList"); + dropDownListWidget.wrapper.attr("tabindex", 3); } + function getTeacherName(value) { var data = JSON.parse(JSON.stringify(arrLayerEng)); @@ -620,8 +624,9 @@ function fn_grid_refresh(){ // 그리드 콤보박스 에디트 function comboEditor2(container, options) { + //container.setAttribute('tabindex', 4); var data = JSON.parse(JSON.stringify(arrLayerScience)); - kendoJQuery('') + var myComboEditor2 = kendoJQuery('') .appendTo(container) .kendoDropDownList({ dataValueField: "code", @@ -638,6 +643,9 @@ function fn_grid_refresh(){ }); var dropdownlist = $(".testDropDownList").data("kendoDropDownList"); + + var dropDownListWidget = myComboEditor2.data("kendoDropDownList"); + dropDownListWidget.wrapper.attr("tabindex", 4); } function getTeacherName2(value) { diff --git a/src/main/webapp/kendo-ui/js/common.js b/src/main/webapp/kendo-ui/js/common.js index 4a3e8317..35a9d112 100644 --- a/src/main/webapp/kendo-ui/js/common.js +++ b/src/main/webapp/kendo-ui/js/common.js @@ -845,6 +845,13 @@ function fn_tabKendo(e, grid, fromToRow) { } var field = $(e.target)[0].name; var value = $(e.target).val(); + + if( !field ) { + field = $(e.target)[0].childNodes[1].name; + if( String(value).trim() === "" ) { + value = $(e.target)[0].childNodes[1].value; + } + } dataItem.set(field, value); if (row >= 0 && row < currentNumberOfItems && col >= 0 && col < nowColCount) { @@ -867,6 +874,7 @@ function fn_tabKendo(e, grid, fromToRow) { return; } + // 변경이 완료되면 셀을 닫고 그리드가 다시 바인딩될때까지 기다림 if(!grid.tbody.find("tr:eq(" + nextCellRow + ") td:eq(" + nextCellCol + ")").is('.noneditable')){ // setTimeout(function() { @@ -875,6 +883,7 @@ function fn_tabKendo(e, grid, fromToRow) { // }); grid.editCell(grid.tbody.find("tr:eq(" + nextCellRow + ") td:eq(" + nextCellCol + ")")); grid.tbody.find("tr:eq(" + nextCellRow + ") td:eq(" + nextCellCol + ")").select(); + } else { while(grid.tbody.find("tr:eq(" + nextCellRow + ") td:eq(" + nextCellCol + ")").is('.noneditable')){ !e.shiftKey ? nextCellCol++ : nextCellCol--;