jqgrid multiselect 삭제 구현

JQUERY 2017. 2. 28. 15:46

이번에 멀티셀렉으로 체크값을 여러개 가져와서 삭제하는 것을 구현해야했다


저장이나 수정버튼을 따로둬서 삭제할 때 실제로 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++)

cs


이렇게 i 값이 증가하게 하였더니 짝수번호만 지워지고 홀수번호는 지워지지가 않았다... 오픈소스의 버그..인가


한참을 고민하고 for문을 거꾸로 돌려보기로해서


1
for (var i = rows - 1; i >= 0; i--)

cs


이렇게 해주니 정상적으로 잘 지워졌다. 이제 수정버튼 눌러서 테이블만 다시 넣어주면 끝 !!

'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