메뉴 건너뛰기

조회 수 3342 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title> 웹 기술대행 서비스는 업폴더 :: www.upfolder.com </title>
<meta http-equiv="content-type" content="text/html; charset=euc-kr">
<meta name="keywords" content="완벽 자바스크립트 및 css를 이용한 숫자만 입력받기">
<meta name="description" content="완벽 자바스크립트 및 css를 이용한 숫자만 입력받기">
<meta name="author" content="www.upfolder.com">
</head>
<body>
<script language="javascript">
<!--
/*
// Function : onOnlyNumber
// Description : 숫자만 입력받도록
//  Param  : obj - text
//  Return  : true or false
*/
function onOnlyNumber(obj)
{
 for (var i = 0; i < obj.value.length ; i++){
  chr = obj.value.substr(i,1); 
  chr = escape(chr);
  key_eg = chr.charAt(1);
  if (key_eg == ’u’){
   key_num = chr.substr(i,(chr.length-1));  
   if((key_num < "AC00") || (key_num > "D7A3")) {
    event.returnValue = false;
   }   
  }
 }
 if (event.keyCode >= 48 && event.keyCode <= 57) {
 
 } else {
  event.returnValue = false;
 }
}
// EOF

//-->
</script>


<form name=upfolder>
<b>숫자만 입력받기 (onKeyPress) : </b><br>
<input type=text name=field1 size=30 onKeyPress="onOnlyNumber(this);">
<br>
<b>숫자만 입력받기 (onKeyDown) : </b><br>
<input type=text name=field2 size=30 onKeyDown="onOnlyNumber(this);">
</form>

 

<pre>
위와 같이 하면 한글입력을 막을 수 있습니다. 하지만 한가지 문제점이 있습니다.
위의 코드를 만들어 놓고 onKeyPress를 적용하면 한글을 쓰고 페이지 공백으로 포커스를 이동할 경우
마지막에 입력했던 한글이 그대로 나오게 됩니다.
* onKeyPress 대신 onKeyDown 사용하면 한글 키 자체를 입력하지 못함.
<br>
위에서 기술한 것보다 개량된 코드는 위 코드에서 style에 IME-MODE를 적용하여 함께 사용하는 것입니다.
이렇게 IME-MODE로 한글자체를 막아버리고 ASCII만을 허용하게 설정하는 것입니다.
</pre>

 

<br>
<hr size=1>
<pre>
ImeMode 속성은 IME(Input Method Editor)를 특정 모드로 전환하기 위해 폼과 컨트롤에서 사용합니다.
IME는 일반 키보드로 인코딩할 수 있는 것보다 더 많은 문자를 포함하고 있으므로 중국어, 일본어 및 한국어 스크립트를 작성하는 데 필수적인 구성 요소입니다.
예를 들어, 특정 입력란에 ASCII 문자만 사용하게 할 수도 있습니다.
이런 경우에 특정 입력란에 대해 ImeMode 속성을 Disable로 설정하면 사용자는 해당 입력란에 ASCII 문자만 입력할 수 있습니다.

 

사용방법 (Syntax)
HTML { ime-mode : sMode } 
Scripting object.style.imeMode [ = sMode ]

IME-MODE 에 설정가능한 값 (sMode 는 스트링형으로 아래 서술한 값중 하나를 설정할 수 있습니다.)
1. auto : Default. IME is not affected. This is the same as not specifying the ime-mode attribute.
2. active : All characters are entered through the IME. Users can still deactivate the IME.
3. inactive : All characters are entered without IME. Users can still activate the IME.
4. disabled : IME is completely disabled. Users cannot activate the IME if the control has focus.

테스트할 때는 키보드가 한글모드인지 영문모드인지 확인해 보고 모드를 바꾸어 가면서 테스트해 보세요.
</pre>


<form name=upfolder>
IME-MODE:auto/기본값으로 설정하지 않은 것과 같음 : <br>
<input type=text name=field1 size=30 style="IME-MODE:auto;">
<br>
IME-MODE:disabled/오로지 영문만 : <br>
<input type=text name=field1 size=30 style="IME-MODE:disabled;">
<br>
IME-MODE:inactive/기본영문, 한글전환 가능 : <br>
<input type=text name=field1 size=30 style="IME-MODE:inactive;">
<br>
IME-MODE:active/기본한글, 영문전환 가능 : <br>
<input type=text name=field1 size=30 style="IME-MODE:active;">
<br>


<hr size=1>
<br>
<b>숫자만 입력받기</b> ( style="IME-MODE:disabled;" onKeyDown=onOnlyNumber(this) ): <br>
<input type=text name=field1 size=30 style="IME-MODE:disabled;" onKeyDown="onOnlyNumber(this);">
</form>

 

</body>
</html>



List of Articles
번호 제목 날짜 조회 수
181 JavaScript 출생년도에 따른 나이 계산 자바스크립트 2018.09.28 50
180 엔터키 / enter key submit form 2018.09.27 42
179 팝업창 차단 "허용 메시지" 2018.09.27 47
178 테이블에서 해당 열의 인덱스 값 얻는 방법 2018.08.29 93
177 key pressing 누르거나 클릭중인 이벤트 예제 2018.08.29 95
176 유용한 스크립트 모음 2018.07.24 269
175 cross site scripting을 막기위한...javascript 2018.07.24 225
174 다음 우편번호(주소) api 예시 file 2018.07.04 448
173 스마트에디터(SmartEditor)에서 textarea 유효성 체크하기 2018.07.04 460
172 반복문 사용할때 태그 식별하기 data-item 2018.07.04 346
171 SelectBox에서 선택된 항목의 텍스트, 값 가져오기 선택 옵션 넣기. 2018.07.04 362
170 체크박스(CheckBox) 전체 선택, 전체 해제 checked file 2018.07.04 427
169 스마트 에디터 (네이버 에디터) 에디터 내에서 이미지 크기 줄이기.(리사이징) file 2018.07.04 366
168 Javascript selectbox selected 컨트롤 file 2018.06.21 515
167 새로고침(F5) 금지 2018.03.28 1022
166 날짜 및 시간 입력 구현하기, Bootstrap DateTimePicker file 2017.04.06 6608
165 [INPUT BOX] 텍스트박스(INPUT 박스) 가 동적으로 추가,삭제됩니다 2017.02.18 4423
164 팝업창 가운데 띄우기 2016.12.22 4187
163 셀렉트(select) change href 이벤트 2016.12.22 3461
162 셀렉트(select) change Ajax 이벤트 2016.12.22 3409
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 Next
/ 10

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved