/*-------------------------------------------------------------------------------*/ /* 한글의 경우 키 입력시 바로바로 작업이 안되기 때문에 onchange 와 onblur 등 이벤트도 같이 등록. */ // 한글만 입력받기 (초성체 무시) // 나머지 글자 무시 function nr_han(this_s,type){ /* type -> 'c' : 초성 포함 -> 's' : 초성 포함 + 공백 포함 -> '' : 초성, 공백 무시 */ temp_value = this_s.value.toString(); regexp = ''; repexp = ''; switch(type){ case 'c': regexp = /[^ㄱ-ㅎ가-�R]/g;break; case 's': regexp = /[^ㄱ-ㅎ가-�R\s]/g;break; case '': regexp = /[^가-�R]/g; break; default : regexp = /[^ㄱ-ㅎ가-�R\s]/g; } if(regexp.test(temp_value)) { temp_value = temp_value.replace(regexp,repexp); this_s.value = temp_value; } } /*-------------------------------------------------------------------------------*/ // 한글만 입력받기 (초성체 포함) // 나머지 글자 무시 function nr_han_cho(this_s){ nr_han(this_s,'c'); } /*-------------------------------------------------------------------------------*/ // 한글만 입력받기 (초성체 포함, 공백 포함) // 나머지 글자 무시 function nr_han_cho_space(this_s){ nr_han(this_s,'s'); } /*-------------------------------------------------------------------------------*/ function nr_numeng(this_s){ temp_value = this_s.value.toString(); regexp = /[^0-9a-zA-Z]/g; repexp = ''; temp_value = temp_value.replace(regexp,repexp); this_s.value = temp_value; } /*-------------------------------------------------------------------------------*/ // 나머지 글자 무시 function nr_num(this_s,type){ /* type -> 'int' : 양의 정수 -> 'float' : 양의 실수 -> '-int' : 음의 정수 포함 -> '-int' : 음의 실수 포함 */ temp_value = this_s.value.toString(); regexp = /[^-\.0-9]/g; repexp = ''; temp_value = temp_value.replace(regexp,repexp); regexp = ''; repexp = ''; switch(type){ case 'int': regexp = /[^0-9]/g; break; case 'float':regexp = /^(-?)([0-9]*)(\.?)([^0-9]*)([0-9]*)([^0-9]*)/; break; case '-int': regexp = /^(-?)([0-9]*)([^0-9]*)([0-9]*)([^0-9]*)/;break; case '-float':regexp = /^(-?)([0-9]*)(\.?)([^0-9]*)([0-9]*)([^0-9]*)/; break; default : regexp = /[^0-9]/g; break; } switch(type){ case 'int':repexp = '';break; case 'float':repexp = '$2$3$5';break; case '-int': repexp = '$1$2$4';break; case '-float':repexp = '$1$2$3$5'; break; default : regexp = /[^0-9]/g; break; } temp_value = temp_value.replace(regexp,repexp); this_s.value = temp_value; } // 양의 정수만 입력받기 function nr_num_int(this_s){ nr_num(this_s,'int'); } // 양의 실수만 입력받기 function nr_num_float(this_s){ nr_num(this_s,'float'); } /*-------------------------------------------------------------------------------*/ // 영어만 입력받기 (대소문자) // 나머지 글자 무시 function nr_eng(this_s,type){ temp_value = this_s.value.toString(); regexp = ''; repexp = ''; switch(type){ case 'small':regexp = /[^a-z]/g;break; case 'big':regexp = /[^A-Z]/g;break; case 'all':regexp = /[^a-z]/i;break; default :regexp = /[^a-z]/i;break; } temp_value = temp_value.replace(regexp,repexp); this_s.value = temp_value; } // 영어만 입력받기 (소문자) // 나머지 글자 무시 function nr_eng_small(this_s){ nr_eng(this_s,'small'); } // 영어만 입력받기 (대문자) // 나머지 글자 무시 function nr_eng_big(this_s){ nr_eng(this_s,'big'); } /*-------------------------------------------------------------------------------*/ // 주민등록 번호 규격에 맞게 123456-1234567 //검증하지 않음. // 나머지 글자 무시 function nr_jumin(this_s){ temp_value = this_s.value.toString(); temp_value = temp_value.replace(/[^0-9]/g,''); temp_value = temp_value.substr(0,13); temp_value = temp_value.replace(/([0-9]{6})([0-9]{7}$)/,"$1-$2"); this_s.value = temp_value; } /*-------------------------------------------------------------------------------*/ // 사업자 등록 번호 규격에 맞게 123-12-12345 //검증하지 않음. // 나머지 글자 무시 function nr_company_num(this_s){ temp_value = this_s.value.toString(); temp_value = temp_value.replace(/[^0-9]/g,''); temp_value = temp_value.substr(0,10); temp_value = temp_value.replace(/([0-9]{3})([0-9]{2})([0-9]{5}$)/,"$1-$2-$3"); this_s.value = temp_value; } /*-------------------------------------------------------------------------------*/ /* * 숫자와 - 만 사용가능 */ function nr_hyphen_num(this_s){ temp_value = this_s.value.toString(); temp_value = temp_value.replace(/[^0-9^-]/g,''); this_s.value = temp_value; } function nr_tel_num(this_s){ temp_value = this_s.value.toString(); temp_value = temp_value.replace(/[^0-9^-]/g,''); this_s.value = temp_value; } /* // 관리자 번호 앞에 9자리 삭제 function nr_Adminno_Cut(adminno) { if(adminno.length != 19) return adminno adminno = adminno.substr(9, 10); return adminno; } */ // 관리자 번호 앞에 9자리 삭제 function nr_Adminno_Cut(adminno) { if(adminno.length != 20) return adminno adminno = adminno.substr(9, 10); return adminno; } /* // 날짜에 - 추가 function nr_Date_Paste(date) { if(date.length != 8) return date; date = date.substr(0, 4) + "-" + date.substr(4, 2) + "-" + date.substr(6, 2); return date; } */ // 날짜에 - 삭제 function nr_Date_Cut(date) { if(adminno.length != 8) return date date = date.substr(0, 4) + "-" + date.substr(5, 2) + "-" + date.substr(7, 2); return date; } // 날짜에 - 삭제 function nr_Date_Cut(date) { if(date.length != 10) return date; date = date.substr(0, 4) + date.substr(5, 2) + date.substr(8, 2); return date; } // ,추가 function comma_paste(this_s) { fvalue = this_s.value.toString(); fvaluenum = fvalue.length; if(fvaluenum>3){ comma=Math.ceil(fvaluenum/3)-1; substart = 0; for(x=comma; x>=0; x--){ sublast = fvaluenum-(x*3); val=fvalue.substring(substart, sublast); substart = sublast; if(x==comma) vall = val + ','; else if(x==0) vall = vall + val; else vall = vall + val + ','; } this_s.value = vall; } else { this_s.value = fvalue; } } // , 제거함수 function comma_cut(this_s) { restring = this_s.value.toString(); if(restring.search(',')){ exp=restring.split(','); for(t=0 ; ; t++){ if(!exp[t]) break; if(t==0){ restring = exp[t]; } else { restring = restring + exp[t]; } } } this_s.value = restring; } // 정해진 숫자 길이를 넘기면 다음포커스로 이동 function count_check(this_s, this_e, cnt) { nr_num_int(this_s); restring = this_s.value.toString(); if(restring.length >= cnt) { this_e.focus(); } }