조사원 > 조사원 팝업: 체크박스 상태 복원 기능 추가, 그리드 필터 옵션 개선 및 불필요한 로그 제거

dev
박성영 4 months ago
parent 6d8a7995f1
commit 570622d5b1

@ -137,7 +137,12 @@
name: 'exmnr',
align: 'left',
width: 200,
sortable: true
sortable: true,
filter: {
type: 'text',
showApplyBtn: true,
showClearBtn: true
},
},
{
header: '시군구',
@ -204,7 +209,7 @@
gridBindEvents: function() {
var self = this;
// 데이터 로딩 완료 이벤트 - 체크박스 초기화
// 데이터 로딩 완료 이벤트 - 체크박스 상태 복원
this.instance.on('successResponse', function(ev) {
var responseObj = JSON.parse(ev.xhr.response);
if( responseObj ){
@ -212,8 +217,10 @@
$("#totalCount").text('총 ' + totalCount.toLocaleString() + '건');
}
// 선택된 행 초기화
ExmnrPopPopup.selectedRows = [];
// 기존 선택된 행들의 체크박스 상태 복원
setTimeout(function () {
ExmnrPopPopup.restoreCheckboxStates();
}, 100);
});
// 체크 이벤트
@ -275,7 +282,6 @@
* 행 체크 이벤트
*/
onRowCheck: function(ev) {
console.log(ev);
var rowData = this.grid.instance.getRow(ev.rowKey);
// 중복 방지
@ -286,7 +292,6 @@
if (existIndex === -1) {
this.selectedRows.push(rowData);
}
console.log(this.selectedRows);
},
/**
@ -320,6 +325,35 @@
this.selectedRows = [];
},
/**
* 체크박스 상태 복원
* 검색 후 데이터 바인딩 시 기존 선택된 행들의 체크박스를 다시 체크
*/
restoreCheckboxStates: function() {
var self = this;
// 선택된 행이 없으면 복원할 필요 없음
if (!this.selectedRows || this.selectedRows.length === 0) {
return;
}
var grid = this.grid.instance;
if (!grid) {
return;
}
// findRows를 사용하여 현재 그리드 데이터에서 선택된 행들을 찾습니다.
grid.findRows(function(row) {
self.selectedRows.some(function(selectedRow) {
if( selectedRow && row && selectedRow.exmnrId === row.exmnrId ){
console.log(row);
grid.check(row.rowKey);
}
});
});
},
/**
* 조사원 선택
*/

Loading…
Cancel
Save