특정 row만 Editable 하도록 하는 방법
Q.
특정 row만 Editable 하도록 하는 방법
A.
Checkbox를 이용한 Row단위 Editable을 설정 방법을 알려드리겠습니다.
Current 가 이동 하였을때 콜백 되는 함수
grid.onCurrentChanged(grid, newIndex)
CheckBox를 Check 하였을때 콜백 되는 함수
grid.onItemChecked(grid, itemIndex, checked)
CheckBox를 전체 Check 하였을때 콜백되는 함수
grid.onItemAllChecked(grid, checked)
를 이용해서 구현해 보았습니다 아래 예제를 참조해 주세요.
grid.onItemChecked = function(grid, itemIndex, checked){ editableControl(checked, grid); } grid.onItemAllChecked = function(grid, checked){ editableControl(checked, grid); } grid.onCurrentChanged = function(grid, newIndex){ var check = grid.isCheckedItem(newIndex.itemIndex); editableControl(check, grid); } function editableControl(check, grid){ var index = grid.getCurrent(); var column = grid.columnByField(index.fieldName); if(check){ // column field name = a if(index.fieldName == 'a'){ grid.setColumnProperty(column, "editable", true); }else{ grid.setColumnProperty(column, "editable", false); } }else{ grid.setColumnProperty(column, "editable", false); } }