[javascript] keypress에서 keyCode는 사용하지 않는다. charCode 혹은 which를 사용한다.

,

예컨대 영문 키들은 그냥 키코드가 0으로 나온다. 즉, 설정돼 있지 않은 거다.

keypress를 사용한다면, event.charCode나 event.which 를 사용해야 한다.
keypress는 입력 자체를 막아야 할 때 사용한다. keyup으로 입력을 검사한다면 이미 입력된 후일 테니까 말이다.
아래 코드를 긁어서 테스트해 보면 될 거다. 숫자가 아니면 입력을 막는 코드다.
<script src="scripts/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
	$('.quantity input').keypress(function(event) {
	alert(event.charCode);
	  if (event.which && (event.which < 48 || event.which > 57)) {
		event.preventDefault();
	  }
	})
});
</script>

<div class="quantity">
  <input type="text"/>
</div>

카테고리

,

17년차 풀스택 웹 개발자 Mytory입니다

웹 개발에서도 중요한 것은 개념입니다.
이 블로그에는 제가 개발하며 익힌 개념들을 정리합니다.

워드프레스를 오래 다뤄 왔고 강의도 두 편 찍었습니다.
– 인프런 “워드프레스 제대로 개발하기 어드민 편, 클라이언트 편
– 클래스101 “누구나 할 수 있는 워드프레스 홈페이지 만들기 – 기획부터 출시까지 한 방에 OK

유튜브 채널에 워드프레스 관련 팁들을 올리고 있습니다.

👉 소개 더 보기

대표글

댓글 남기기