본문 바로가기

BASIC

인풋박스에 한글만 / 영문만 style / ime-mode

<input> tag의 style에 아래와 같이 적어주면 된다.

   style="ime-mode:active"

ime-mode는 아래 값중 하나를 가질 수 있다.

   active      : default 한글
   inactive    : default 영문
   auto        : 한글/영문 중 선택된 mode
   disabled    : 영문만을 입력할 수 있다

아래와 같은 경우 주의.

   팝업 윈도우를 만들 때, 아래와 같은 상황에서는 disabled 된 것 같은
   상황이 발생한다.

      <input type='text' id='p_name' style='ime-mode:active;'>
         :
      <script>
          p_name.focus();  // input box에 입력포커스를 주도록 함.
      </script>
         :
      <script>
          window.focus();  // popup 윈도우가 화면 앞쪽으로 튀어 나오도록 해줌.
      <script>    

   위 스크립트가 실행되면, 실제로 키보드 입력포커스는 input box에 있지만
   ime 프로그램이 보는 focus는 window가 갖게 된다.
   window는 입력 focus가 없으므로 ime는 disabled 된다.
   이 때, input box를 마우스로 클릭하면, ime는 한글입력 모드로 전환되는
   현상을 볼 수 있다.

   결국, p_name.focus()보다 window.focus()를 먼저 호출하도록 수정하면 됨.