JAVASCRIPT/JSTL

[JavaScript] 숫자 체크 로직

#자바스크립트 #숫자검사함수 #리턴값체크 #날짜검사함수 #대충가져다쓰면되 #숫자체크로직 #날짜체크 #아스키코드표 #숫자아스키코드

안녕하세요, 배곧동개발자 입니다.

웹페이지를 만들다보면 여러가지 입력을 받게되고, 그 입력값들에 제약을 걸어야되는 상황들이 생겨요. 예를들면 날짜라던가 우편번호라던가는 무조건 숫자여야지요?

이럴 때 사용하는 javascript 로직이에요.

자바스크립트 이벤트 중 blur에 넣거나 commit 전, vaildation check할때 넣어주세요.

// 숫자 검사 로직
function checkIntVal(val){
 var tempStr = val;
 var tempStr2 = "";
 for(var i=0; i<tempStr.length; i++){
  tempStr2 = tempStr.charCodeAt(i);
                // 숫자 또는 . 까지는 허용 (.허용 안할 시 아래 44번은 없애면 됨)
  if(!((tempStr2 >=48 && tempStr2 <= 57) || tempStr2 == 44)){
   return false;
  }
 }
 return true;
}

원리는 뭐 간단히 아스키코드를 이용하는거구요. 문자열 하나씩 체크하면서 숫자가 아닌것 찾아내는거에요.

저는 blur 이벤트에 넣어서 그때그때 검사하도록 만들었기에 소스를 조금 수정해서 만들어봤어요. 참고하시면 좋을꺼에요.

function chkIntVal(obj){ 
 var tempStr = obj.value;
 var tempStr2 = "";
 for(var i=0; i<tempStr.length; i++){
  tempStr2 = tempStr.charCodeAt(i);
  if(!((tempStr2 >=48 && tempStr2 <= 57) || tempStr2 == 44)){
   alert("숫자만 입력해주시기 바랍니다.");
   obj.focus();
  }else if(tempStr.length < 5){
   alert("올바른 우편번호를 입력해주시기 바랍니다.");
   obj.focus();
  }
 }
}

추가로 밑에는 아스키코드 표까지 넣어봐요.

참고하셔서 조건문 조금씩 변경해 필요한 함수 만들어 쓰시면 될거에요.

이만, 배곧동개발자 였습니다.

배곧동개발자

Recent Posts

[세븐나이츠 리버스] 쫄작 가이드 (기초편)

#세븐나이츠리버스 #쫄작 #가이드 #꿀팁 #제이브 그 옛날, 세나를 해보신 분들이라면 모를 수 없으나 이제 세븐나이츠…

3주 ago

[세븐나이츠 리버스] 최신 쿠폰 공유! 쿠폰 입력 방법! (5월15일)

1. 세븐나이츠 리버스 오늘, 2025년 5월 15일에 오픈한 세븐나이츠 리버스! 다들 시작하셨나요? 제이브를 뽑고싶은데 아직…

3주 ago

[CSS] 이미지가 빙빙 돈다? animation spin

#css #spin #animation #spin 1. 이미지가 빙빙돈다! 어? 이게 뭐지? 이미지가 빙빙 돕니다. 나 이거…

1개월 ago

[node.js] npm.ps1 파일을 로드할 수 없습니다

#노드js #nodejs #에러 #오류 #npm 1. npm.ps1 Error node js 를 설치 후 npm을 이용하려…

2개월 ago

[MSSQL] 넓은 영어, 띄어쓰기 영어 입력되는 현상 (전각입력/문자폭)

#MSSQL #문자폭 #영어넓이 #쿼리입력안됨 1. MSSQL 영어 입력 안되는 현상 MSSQL을 주로 쓰고 있는데 MSSMS에서…

3개월 ago

[이미르] 다니아믹 키 확실한 해결방법 (커스텀토큰/접속불가)

#레전드오브이미르 #다이나믹키가다릅니다 #커스텀토큰 #접속불가 #오류 #해결방법 1. 다이나믹 키 더럽다! 유저의 다이나믹키가 다릅니다. 위메이드의 레전드…

3개월 ago