|
|
|
|
@ -136,7 +136,8 @@
|
|
|
|
|
|
|
|
|
|
// 가로, 세로 입력 시 면적 자동 계산
|
|
|
|
|
// 중요한 로직 주석: 가로와 세로 값 입력이 완료되면(blur) 자동으로 면적을 계산하여 입력한다.
|
|
|
|
|
$('#wdth, #vrtc').on('blur', function() {
|
|
|
|
|
// input 이벤트 제거: inputmask와 충돌하여 정상 동작하지 않음
|
|
|
|
|
$('#wdth, #vrtc').on('blur input', function() {
|
|
|
|
|
calculateArea();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
@ -334,12 +335,12 @@
|
|
|
|
|
* 중요한 로직 주석: 가로와 세로 값을 곱하여 면적을 자동으로 계산하고 입력한다.
|
|
|
|
|
*/
|
|
|
|
|
function calculateArea() {
|
|
|
|
|
var wdth = $('#wdth').val();
|
|
|
|
|
var vrtc = $('#vrtc').val();
|
|
|
|
|
var wdth = $('#wdth').inputmask('unmaskedvalue');
|
|
|
|
|
var vrtc = $('#vrtc').inputmask('unmaskedvalue');
|
|
|
|
|
|
|
|
|
|
// 빈 값 체크
|
|
|
|
|
if (!wdth || !vrtc) {
|
|
|
|
|
$('#area').val('');
|
|
|
|
|
$('#area').val('0.00');
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -349,23 +350,24 @@
|
|
|
|
|
|
|
|
|
|
// 유효성 검사
|
|
|
|
|
if (isNaN(widthNum) || isNaN(verticalNum) || widthNum <= 0 || verticalNum <= 0) {
|
|
|
|
|
$('#area').val('');
|
|
|
|
|
$('#area').val('0.00');
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 면적 계산 (가로 x 세로)
|
|
|
|
|
var area = widthNum * verticalNum;
|
|
|
|
|
var formmatedArea = area.toFixed(2);
|
|
|
|
|
|
|
|
|
|
// decimal(10,2) 타입 최대값 체크 (99999999.99)
|
|
|
|
|
if (area > 99999999.99) {
|
|
|
|
|
alert('면적이 허용범위(99,999,999.99)를 초과하였습니다.');
|
|
|
|
|
$('#area').val('');
|
|
|
|
|
$('#area').val('0.00');
|
|
|
|
|
errorElementCreate($('#area')[0], '면적이 허용범위(99,999,999.99)를 초과하였습니다.', false);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 소수점 둘째 자리까지 반올림하고 천 자리 구분 쉼표 추가하여 표시
|
|
|
|
|
$('#area').val(area);
|
|
|
|
|
$('#area').trigger('focus').trigger('blur');
|
|
|
|
|
$('#area').val(formmatedArea).trigger('input');
|
|
|
|
|
errorElementCreate($('#area')[0], '면적이 허용범위(99,999,999.99)를 초과하였습니다.', true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|