2014-11-28 1 views
0

dotJSFiddle 뒤에 두 개의 값만 입력하는 것을 제한하는 jsfiddle이 있습니다. 또한 dot처럼 5566 등의 값을 갖고 싶습니다. 두 개의 숫자 값만 제한해야합니다.십진법 검증 방법 : 두 개의 숫자 값만 입력하도록 제한 하시겠습니까?

javascript에서이 작업을 수행하는 방법은 무엇입니까? 또한 only Numbers to be entered before and after dot

+1

정규 표현식의 사용을 사용할 수 있습니다 최선의 내기. –

+1

"제한"이란 "정확히 2 자리 만 허용"또는 "1-2 자리 만 허용"또는 "0-2 자리"를 의미합니까? '1.2'를 허용해야합니까? 아니면'.33' 또는 간단히'10'입니까? –

답변

3

keypress의 필요가 대신 onblur를 사용하지 허용하고 당신은 아마 것 다음 정규식

function validateFloatKeyPress(el, evt) { 
    if (!/^\d\d\.\d\d$/.test(el.value)) { 
     alert("Two digits before and after point please!"); 
    } 
} 

DEMO

+0

@TimPietzcker 아! 이제는 앵커 –

+0

'/^\ d {0,2} \. \ d \ d $ /'와 함께 작동합니다.이 정규 표현식은 OP가 원하는 것일 수 있습니다. 어느 점이 '점'앞에 오는지 알 수 있습니다. –

+0

는 Amit Joki에게 감사의 뜻을 전합니다. –

0

document.addEventListener('DOMContentLoaded', function() { 
 
    document.getElementById('input').addEventListener('keypress', function (event) { 
 
    var value = event.target.value + String.fromCharCode(event.keyCode); 
 
    if (!(/^\d{1,2}(\.$|\.\d{1,2}$|$)/).test(value)) { 
 
     event.preventDefault(); 
 
     event.stopPropagation(); 
 
    } 
 
    }); 
 
});
<input id="input" type="text" />

관련 문제