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

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누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개

전체 3,313 |RSS
그누4 팁자료실 내용 검색

회원로그인

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