[자바스크립트] 숫자만 입력

개발/코딩 2017. 11. 13. 14:42

보통 input 타입으로 숫자만 입력 받게 하기 위해서는

<input type="number"> 이런식으로 타입을 지정해준다.

 

그런데 아이폰의 경우에는 다른 문자까지 입력이 가능해서 찾아보니.

<input type="number" pattern="[0-9]*" inputmode="numeric" min="0"/>

이런식으로 코딩을 해주면 숫자만 입력 가능하게 해준다.

 

 

스크립트로 제어 하는 방법

input type="test" 에 onkeydown="return isNumber(event)" 을 추가하고

 

<script>

   function isNumber(event)
   {
    event = event || window.event;
    var keyID = (event.which) ? event.which : event.keyCode;

     if( ( keyID >=48 && keyID <= 57 ) || ( keyID >=96 && keyID <= 105 ) || keyID == 8 || keyID == 46 || keyID == 37 || keyID == 39 )
    {
     return;
    }
    else
    {
     return false;
    }

   }

</script>

 

이렇게 해주면 숫자와 편집키만 입력이 가능하다.