숫자만 입력받기 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

숫자만 입력받기 정보

숫자만 입력받기

본문

다운받은 스킨에 적용된 onlyNumber 함수가 제대로 작동안해서 구글링하다보니 좋은 정보를 얻게 되어 공유합니다.


기존..
function onlyNumber() {
 if((event.keyCode<48)||(event.keyCode>57)) {
  alert('숫자만 입력');
  event.returnValue=false;
 }
}
=> 오른쪽 숫자키가 적용안됨
=> 파이어폭스에서 에러


새로 적용한 코드

/* Register Event Listener For FireFox */
if(navigator.userAgent.indexOf('Firefox') >= 0 ) {
var eventNames = ["mousedown", "mouseover", "mouseout", "mousemove", "mousedrag", "click", "dblclick", "keydown", "keypress", "keyup" ];
for( var i = 0 ; i < eventNames.length; i++ ) {
window.addEventListener( eventNames[i], function(e) {
window.event = e;
}, true );
}
}

function onlyNumber() { // 8 백스페이스 , 9 탭 , 37 왼쪽이동, 39 오른쪽이동, 46 delete
var key;
if(event.which) { // ie9 firefox chrome opera safari
key = event.which;
} else if(window.event) {  // ie8 and old
key = event.keyCode;
}

if(!( key==8 || key==9 || key==37 || key==39 || key==46 || (key >= 48 && key <= 57) || (key >= 96 && key <= 105) )) {
alert("숫자만 입력해 주세요");
event.returnValue = false;
} else {
event.returnValue = true;
}
}


/* Register Event Listener For FireFox */ ~~
이 부분 적용안하면 파이어폭스에서 에러납니다.

적용안하고 사용하려면
<input onkeydown="onlyNumber(event)" > <= 괄호 안에 event 적고

function onlyNumber(event) { 여기도 역시 괄호 안에 적어야 되더군요.

해당부분에 대한 설명은 링크(http://aslike.egloos.com/2965771) 참고하시면 됩니다.
추천
4
  • 복사

댓글 4개

© SIRSOFT
현재 페이지 제일 처음으로