반응형
jqGrid checkbox Multiselect 그리드 멀티선택 체크박스 추가방법
위의 이미지와 같이 그리드 제일 앞 열에 체크박스를 추가하는 방법에 대해 포스팅 하겠습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
function makeTable(id, array, title){
$("#"+id).jqGrid({
datatype: "local",
height: 200,
width : 300,
colNames:['장비ID','장비명'],
colModel:[
{name:'equipId', align:'center',sortable:false, width:'50px'},
{name:'equipNm', align:'left',sortable:false},
],
multiselect : true
});
const jsonString = JSON.stringify(array);
const json = JSON.parse(jsonString);
for(var i in json){
$("#"+id).jqGrid('addRowData',i+1,json[i]);
}
}
|
cs |
위의 소스만 보시면 간단히 multiselect 옵션만 true 로 해주시면
자동으로 체크박스가 추가되게 되는데요,
체크된 데이터를 가져오기 위해서는
행의 데이터를 object 형태로 추출해
원하는 값을 가져오시면 됩니다.
아래의 소스를 보도록 하죠.
1
2
3
4
5
6
7
8
9
10
11
|
function getEquipArray(id, array){
var ids = $("#"+id).jqGrid('getDataIDs');
for(var i=0; i<ids.length; i++){
if($("input:checkbox[id='jqg_"+id+"_"+ids[i]+"']").is(":checked")){
var rowObject = $("#"+id).getRowData(ids[i]);
console.log(rowObject);
var value = rowObject.equipId;
array.push(value);
}
}
}
|
cs |
어떠한 이벤트 발생 시에 그리드에 체크된 데이터의 키값을
배열어 저장하는 함수입니다.
위 코드 중간에 있는 console 의 결과값은 아래와 같습니다.
2번째 행에서 총 행의 갯수를 받아온다음
행의 갯수만큼 반복하면서
체크박스가 선택되었다면 (line 4)
getRowData로 행의 데이터를 object로 받은 다음(line 5)
원하는 데이터를 추출하는 방식입니다. (line 7)
이렇게 하면 그리드에서 체크된 데이터를 추출해 활용할 수 있습니다.
추천 그리드 ▼
Link : https://aljjabaegi.tistory.com/593
반응형
'Programing > jQuery' 카테고리의 다른 글
jquery plugin download jquery 플러그인 검색 다운 사이트 (0) | 2018.02.08 |
---|---|
jquery ajax loading bar, ajax 로딩바 나타내기 blockUI 적용방법 (0) | 2018.01.25 |
jqGrid dropdown (select, combobox) in filterToolbar 콤보박스 추가방법 (0) | 2018.01.10 |
jqGrid dataType json CRUD + filterToolbar + dateRangePicker 6부 CUD 기능 구현 (0) | 2017.11.30 |
jqGrid dataType json CRUD + filterToolbar + dateRangePicker 5부 기간 조회 dateRangePicker설정 (0) | 2017.11.30 |
댓글