묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
text 박스에서의 이벤트를.. 어떻게 하는지요??
2004.02.04 13:37
<script>
function next(str){
if(str.length==2){
frm.text2.focus();
}
}
</script>
<form name=frm>
<input type=text name=text1 onkeydown="next(this.value)"> <p>
<input type=text name=text2>
</form>
text1 에 숫자가 3개가 입력되면 text2 로 포커스를 넘겨주는 소스입니다.
그런데 문제는 onkeyup 이벤트는 전혀 먹히질 않구요..
onkeydown 과 onkeypress 는 작동이 생각했던대로 되질 않습니다.
예를 들면요.. text1 에 123 을 입력하면 포커스는 text2 로 잘 가는데
text1 에는 12 가 text2 에는 3 이 입력되어 집니다.
text1 에 123 이 남아 있어야 하는데 말입니다.
이럴때 어떻게 해야 하는지요..
더 낳은 다른 방법이 있으면 알려주십시요..
아니면.. 이 방법에서의 해결책 만이라도요...
감사합니다
function next(str){
if(str.length==2){
frm.text2.focus();
}
}
</script>
<form name=frm>
<input type=text name=text1 onkeydown="next(this.value)"> <p>
<input type=text name=text2>
</form>
text1 에 숫자가 3개가 입력되면 text2 로 포커스를 넘겨주는 소스입니다.
그런데 문제는 onkeyup 이벤트는 전혀 먹히질 않구요..
onkeydown 과 onkeypress 는 작동이 생각했던대로 되질 않습니다.
예를 들면요.. text1 에 123 을 입력하면 포커스는 text2 로 잘 가는데
text1 에는 12 가 text2 에는 3 이 입력되어 집니다.
text1 에 123 이 남아 있어야 하는데 말입니다.
이럴때 어떻게 해야 하는지요..
더 낳은 다른 방법이 있으면 알려주십시요..
아니면.. 이 방법에서의 해결책 만이라도요...
감사합니다
댓글 4
-
플로렐라
2004.02.04 13:51
-
김윤희
2004.02.04 14:37
<SCRIPT LANGUAGE="JavaScript">
<!--
function check_length(f, s){
if (s.length == 3) f.text2.focus();
alert("aa");
}
//-->
</SCRIPT>
<form name=frm>
<input type=text name=text1 onkeyup="check_length(this.form, this.value)"> <p>
<input type=text name=text2>
</form>
전혀 안됩니다.
함수 호출이 아예 안됩니다. 즉, keyup 이벤트가 안된다는 얘기죠 --;; -
플로렐라
2004.02.04 15:54
저위의 소스대로 htm으로 저장하니 잘됩니다만... (IE6.0 SP1)
그리고 3글자가 입력되면 포커스가 넘어가게 하려면
str.length==3 으로 3이라고 적어야 합니다.
2라고 적어서 3번째 입력한 숫자가 다른폼에 쓰여진것... -
김윤희
2004.02.04 18:42
IE6.0.2800.1106 SP1
Windows 2000 Server Advance 인데요..
역시나 안됩니다.
뭐가 문제인지 잘 모르겠습니다.. ^^;
아무튼 감사합니다 (__)
{
if (s.length == 3) f.text2.focus();
}
onkeyup="check_length(this.form, this.value);"
로 해보시죠? 드림위즈에서 쓰는 스크립트...