단속 등록&열람: 유효성 검증 로직 분리 및 리팩토링

dev
박성영 3 months ago
parent a5cc16f55c
commit 34c8c26dbe

@ -259,23 +259,8 @@
*/
saveCrdnData: function() {
var self = this;
// 필수 필드 검증
if (!$('#rgnSeCd').val()) {
alert('지역구분을 선택해주세요.');
$('#rgnSeCd').focus();
return;
}
if (!$('#dsclMthdCd').val()) {
alert('적발방법을 선택해주세요.');
$('#dsclMthdCd').focus();
return;
}
if (!$('#dsclYmd').val()) {
alert('적발일자를 입력해주세요.');
$('#dsclYmd').focus();
return;
}
if (!this.validate()) return;
// 폼 데이터 수집
var formData = {
@ -309,17 +294,77 @@
});
}
},
/**
* 폼 유효성 검증
* baseData/bldgNewPrcCrtrAmt/popup.jsp 패턴과 동일하게 적용
* @returns {boolean} 유효성 검증 결과
*/
validate: function() {
// 기본 validation-check 속성 기반 검증
var isValid = validateFormByAttributes('crdnForm');
if (isValid) {
// 지역구분 검증
if (!$.trim($('#rgnSeCd').val())) {
var rgnSeElement = document.getElementById('rgnSeCd');
errorElementCreate(rgnSeElement, '지역구분을 선택하세요.', false);
$('#rgnSeCd').focus();
return false;
}
// 적발방법 검증
if (!$.trim($('#dsclMthdCd').val())) {
var dsclMthdElement = document.getElementById('dsclMthdCd');
errorElementCreate(dsclMthdElement, '적발방법을 선택하세요.', false);
$('#dsclMthdCd').focus();
return false;
}
// 재부과여부 검증
if (!$.trim($('#relevyYn').val())) {
var relevyElement = document.getElementById('relevyYn');
errorElementCreate(relevyElement, '재부과여부를 선택하세요.', false);
$('#relevyYn').focus();
return false;
}
// 비고 글자수 검증 (varchar(1000) 제한)
var rmrk = $.trim($('#rmrk').val());
if (rmrk && rmrk.length > 1000) {
var rmrkElement = document.getElementById('rmrk');
errorElementCreate(rmrkElement, '비고는 1000자 이내로 입력하세요. (현재: ' + rmrk.length + '자)', false);
$('#rmrk').focus();
return false;
}
}
return isValid;
},
/**
* 폼 초기화 (취소 기능)
*/
resetForm: function() {
/**
* 모든 유효성 검증 에러 메시지 제거
*/
clearValidationErrors: function () {
// 폼 내의 모든 에러 메시지 제거
$('#crdnForm').find('.error-message').remove();
// 에러 표시 스타일 제거
$('#crdnForm').find('.is-invalid').removeClass('is-invalid');
},
resetForm: function () {
if (confirm('변경사항을 취소하고 원래 데이터로 되돌리시겠습니까?')) {
if (this.currentData) {
this.populateForm(this.currentData);
} else {
this.loadCrdnData();
}
// 유효성 검증 에러 메시지 제거
this.clearValidationErrors();
}
},

Loading…
Cancel
Save