테스트 사이트 - 개발 중인 베타 버전입니다

input 4자리 숫자로만 입력받기 채택완료

존론 7년 전 조회 7,191

  <span>-
      <input type="number" max="9999" maxlength="4" oninput="maxLengthCheck(this)" name="midhp"/>
    </span>
    <span>-
      <input type="number" max="9999" maxlength="4" oninput="maxLengthCheck2(this)" name="lasthp"/>
    </span>
    <script>
    //maxlength 체크
    function maxLengthCheck(object){
      if (object.value.length > object.maxLength){
       object.value = object.value.slice(0, object.maxLength);
        }
     }
   </script>
   <script>
   //maxlength 체크
   function maxLengthCheck2(object){
     if (object.value.length > object.maxLength){
      object.value = object.value.slice(0, object.maxLength);
       }
    }
  </script>

 

휴대폰 번호 입력하게 할건데요

크롬은 되는데 익스에서 마지막이 에러가 나네요

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트

음... input에 maxlength를 넣으셧는데 굳이 또 javascript에서 maxlength 값을 불러와서 비교한 뒤

잘라낼 이유가 있을까... 싶습니다만...

그리고 함수를 두개로 하실 필요는 없으시구요...

일단 숫자만 입력하게끔 하는 javascript를 추가해서 다음과 같이 한번 해보세요.

</p>

<p><span>-<input type="number" max="9999" maxlength="4" oninput="maxLengthCheck(this)" onkeyup="onlynumberic(event)" name="midhp"/></span>

<span>-<input type="number" max="9999" maxlength="4" oninput="maxLengthCheck(this)" onkeyup="onlynumberic(event)" name="lasthp"/></span>

<script>

//maxlength 체크

function maxLengthCheck(object){

    if (object.value.length > object.maxLength){

        object.value = object.value.slice(0, object.maxLength);

    }

}

//숫자만남기고제거

function onlynumberic(event) {

    event.target.value = event.target.value.replace(/[^0-9]/g, "");

}

</script></p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

존론
7년 전
답변 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인