728x90
반응형

jqGrid에서 화면에 모든 checkbox를 한번에 선택해야 될 경우 아래 내용을 추가하면

grid 상단 column 영역에 checkbox가 생성되고 자동으로 기능이 들어간다.

아주 편리함.

 

============================== jqGrid 생성 영역에 추가 ===============================================

jQuery("#div_id").jqGrid({
   url : "test.jsp"+ $("#Form_id").serialize(),
   mtype : 'POST',   
   datatype : "json",

  multiselect: true //이 부분만 추가하면됨

 });

 

* jqGrid Demo 페이지에서 New in version 3.1 -> New Methods  메뉴로 이동하면 볼수 있음

 

============================ mulitselect checkbox checked 된것만 가져오는 방법 ==============================

var params = new Array(); 
var idArry = $("#grid_id").jqGrid('getDataIDs'); //grid의 id 값을 배열로 가져옴
  
for (var i = 0; i < idArry.length; i++) { //row id수만큼 실행          
    if($("input:checkbox[id='jqg_list_"+idArry[i]+"']").is(":checked")){ //checkbox checked 여부 판단
    var rowdata = $("#grid_id").getRowData(idArry[i]); // 해당 id의 row 데이터를 가져옴
   

    // 1. checked 된 row의 데이터를 그대로 배열에 담는 경우

    params.push(rowdata); //배열에 맵처럼 담김        

  

    // 2. checked 된 row의 데이터를 변경하는 경우 별도의 object 생성해서 필요한 값을 세팅

    var obj = new Object();
    obj.name  = rowdata.name;
    obj.age  = rowdata.age;
   params.push(obj); //배열에 맵처럼 담김            
    }

}


* jqGridid 값이 절대 중복되지 않는 필드로 세팅하는 것을 강조! 그렇지 않을 경우 오작동을 일으킬 가능성이 높다!

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,