@@ -189,20 +189,33 @@
}
// 날짜를 yyyy-mm-dd 형식으로 만들어 줌.
- function date_mask(objValue) {
- var v = objValue.replace("--", ".");
- v = objValue.replace("..", ".");
-
- if (v.match(/^\d{4}$/) !== null) {
- v = v + '.';
- } else if (v.match(/^\d{4}\.\d{2}$/) !== null) {
- v = v + '.';
+ function date_mask(obj) {
+ // DELETE 키버튼이 눌리지 않은 경우에만 실행
+ if(event.keyCode != 8) {
+ // 숫자와 점(.)기호의 값만 존재하는 경우 실행
+ if(obj.value.replace(/[0-9 \.]/g, "").length == 0) {
+ // 점(.)기호를 제거한다.
+ let number = obj.value.replace(/[^0-9]/g,"");
+ let ymd = "";
+ // 문자열의 길이에 따라 Year, Month, Day 앞에 점(.)기호를 삽입한다.
+ if(number.length < 4) {
+ return number;
+ } else if(number.length < 6){
+ ymd += number.substr(0, 4);
+ ymd += ".";
+ ymd += number.substr(4);
+ } else {
+ ymd += number.substr(0, 4);
+ ymd += ".";
+ ymd += number.substr(4, 2);
+ ymd += ".";
+ ymd += number.substr(6);
+ }
+ obj.value = ymd;
+ }
+ } else {
+ return false;
}
- v = v.replace(/[a-zA-Z]/g, "");
- v = v.replace( /[\{\}\[\]\/?,;:|\)*~`!^\-_+<>@\#$%&\\\=\(\'\"]/gi, "");
- v = v.replace(/ /gi, '');
-
- return v;
}