전화 번호 입력시 숫자 0이 입력 안됨

전화 번호 입력시 숫자 0이 입력 안됨

QA

전화 번호 입력시 숫자 0이 입력 안됨

본문

이용자로 부터 전화번호만 입력을 받는 칸인데요. 1 ~ 9 까지는 잘 입력이 되는에 0 만 입력이 안됩니다.

 

 <input type='text' name='htel2' id="tel2" size='4' maxlength='4' class='txt'  onKeydown='javascript:handlerNum(this)' required /> <label for="tel2"> - </label>

              <input type='text' name='htel3' id="tel3" size='4' maxlength='4' class='txt'  onKeydown='javascript:handlerNum(this)' required /><label for="tel3">- </label>

 

input 에서 text 숫자를 입력 받습니다. javascript - handlerNum(this) 에서 입력 되는게 숫자 인지 아닌지를 판단합니다.

 

function handlerNum(obj) { 

  e = window.event; //윈도우의 event 잡기

  

 

  //입력 허용 키

  if( ( e.keyCode >=  48 && e.keyCode <=  57 ) ||   //숫자열 0 ~ 9 : 48 ~ 57

      ( e.keyCode >=  96 && e.keyCode <= 105 ) ||   //키패드 0 ~ 9 : 96 ~ 105

        e.keyCode ==   8 ||    //BackSpace

        e.keyCode ==  46 ||    //Delete

        //e.keyCode == 110 ||    //소수점(.) : 문자키배열

        //e.keyCode == 190 ||    //소수점(.) : 키패드

        e.keyCode ==  37 ||    //좌 화살표

        e.keyCode ==  39 ||    //우 화살표

        e.keyCode ==  35 ||    //End 키

        e.keyCode ==  36 ||    //Home 키

        e.keyCode ==   9       //Tab 키

    ) {

  

    if(e.keyCode == 48 || e.keyCode == 96) { //0을 눌렀을경우

      if ( obj.value == "" || obj.value == '0' ) //아무것도 없거나 현재 값이 0일 경우에서 0을 눌렀을경우

        e.returnValue=false; //-->입력되지않는다.

      else //다른숫자뒤에오는 0은

        return; //-->입력시킨다.

      }

 

    else //0이 아닌숫자

      return; //-->입력시킨다.

    }

    else //숫자가 아니면 넣을수 없다.

 {

  alert('숫자만 입력가능합니다.!');

  e.returnValue=false;

 }

}

 

인터넷에 비슷한 코드가 있어서 봐꿔서 해보았는데요 안되네요. ㅜㅜ

뭐가 문제인가요?

이 질문에 댓글 쓰기 :

답변 1

 if ( obj.value == "" || obj.value == '0' ) //아무것도 없거나 현재 값이 0일 경우에서 0을 눌렀을경우

        e.returnValue=false; //-->입력되지않는다.

이부분 때문이네요

 

답변을 작성하시기 전에 로그인 해주세요.
전체 34
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT