채택완료

pc에서는 되는 스크립트가 모바일에서는 되지가 않네요;;;

2020-12-18 (금) 15:52:23 6,348

안녕하세요.

input text에 소수점을 한 개 이상 찍을수 없도록 하는것과 소수점 아래 8자리 이상 입력을 막는

스크립트를 쓰는데 pc브라우저로 하면 잘 먹는데 모바일 브라우저에서는 되지가 않네요 

뭐가 문제일까요;;;;; 스크립트는 아래와 같습니다.

Copy
<input type="text" onkeypress="return isNumberKey(event)" onkeyup="this.value=this.value.replace(/[\ㄱ-ㅎㅏ-ㅣ가-힣]/g, '');" class="form-control3 form-control-lg form-control-number" id="buysell-amount" name="bs-amount" value="" onpaste="javascript:return false;">

 

 

function isNumberKey(evt) {
    var charCode = (evt.which) ? evt.which : event.keyCode;
    if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
        return false;
    // Textbox value    
    var _value = event.srcElement.value;  
    var _pattern0 = /^\d*[.]\d*$/; 
    if (_pattern0.test(_value)) {
        if (charCode == 46) {
            return false;
        }
    }

    var _pattern2 = /^\d*[.]\d{8}$/;
    if (_pattern2.test(_value)) {
     alert("You can enter only up to eight decimal places.");
      return false;
    }  
    return true;
}

답변 1개

채택된 답변
+20 포인트
2020-12-19 (토) 17:12:29

전에 얼핏 본거 같은데
onkeypress나 keydown 등의 키보드 이벤트가, 모바일에선 안먹히는 경우가 있는걸로 알고있습니다.

구글링을...

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