이번에 멀티셀렉으로 체크값을 여러개 가져와서 삭제하는 것을 구현해야했다
저장이나 수정버튼을 따로둬서 삭제할 때 실제로 db의 값은 지워지지 않게 만들었다.
그래서 화면에서만 삭제가 되게만 구현하면 되었다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | var myGrid = jQuery("#table"); myGrid.jqGrid('navButtonAdd', "#table_nav",{ caption : "", buttonicon: "ui-icon-trash", title : "행 삭제", onClickButton : function (){ var recs = jQuery("#table").jqGrid('getGridParam', 'selarrrow'); var rows = recs.length; for (var i = rows - 1; i >= 0; i--) { $('#table').jqGrid('delRowData', recs[i]); } } }); | cs |
여기서 중요한 부분은 for문이다
처음에 for문을 돌릴 때
1 | for(var i = 0; i<rows ; i++) |
이렇게 i 값이 증가하게 하였더니 짝수번호만 지워지고 홀수번호는 지워지지가 않았다... 오픈소스의 버그..인가
한참을 고민하고 for문을 거꾸로 돌려보기로해서
1 | for (var i = rows - 1; i >= 0; i--) |
이렇게 해주니 정상적으로 잘 지워졌다. 이제 수정버튼 눌러서 테이블만 다시 넣어주면 끝 !!
'JQUERY' 카테고리의 다른 글
jquery 강제로 엔터 이벤트 발생시키기 (0) | 2017.03.02 |
---|---|
jquery 페이지 새로고침(reload) (0) | 2017.03.02 |
jqgrid 선택된 행 기준으로 행 삽입하기 (0) | 2017.02.28 |
ajax 기본문법 (0) | 2017.02.24 |
jqgrid caption 숨기기 (0) | 2017.02.22 |