입력폼에 대하여 작업을 할때 자주 쓰이는 자바스크립트 활용법이다.
일단 아래의 소스를 살펴 보자.
<script language='javascript'>
function onlyNumber()
{
if(((event.keyCode >= 48) && (event.keyCode <= 57))) {
event.returnValue = true;
} else {
event.returnValue = false;
}
}
function focusMove(obj,max,toObj) {
value = obj.value;
if (value.length >= max) {
toObj.focus();
return;
}
}
//-->
</SCRIPT>
<form name="f" method='post'>
<input name="hp1" type="text" class="formbox" style="height:20px;ime-mode:disabled;" size="4" onfocus="this.style.backgroundColor='#dddddd'" onblur="this.style.backgroundColor=''" onkeypress="onlyNumber()" maxlength="3" onkeyup="focusMove(this,3,document.f.hp2)" />
-
<input name="hp2" type="text" class="formbox" style="height:20px;ime-mode:disabled;" size="4" onfocus="this.style.backgroundColor='#dddddd'" onblur="this.style.backgroundColor=''" onkeypress="onlyNumber()" maxlength="4" onkeyup="focusMove(this,4,document.f.hp3)" />
-
<input name="hp3" type="text" class="formbox" style="height:20px;ime-mode:disabled;" size="4" onfocus="this.style.backgroundColor='#dddddd'" onblur="this.style.backgroundColor=''" onkeypress="onlyNumber()" maxlength="4" onkeyup="focusMove(this,4,document.f.email)" />
<input name="email" type="text" class="formbox" style="height:20px;" size="50" onfocus="this.style.backgroundColor='#dddddd'" onblur="this.style.backgroundColor=''" />
</form>
직접 실행해 보시면 아시겠지만, focusMove 함수로 바로 바로 다음 입력폼으로 자동 이동되며, OnlyNumber 함수로는 숫자키만
입력받도록 한다.
그런데 여기서 style 소스 안에 ime-mode:disabled 도 같이 입력해 주고, 한글키 입력을 못하도록 막아주도록 하자.