시리얼번호가 있는 프로그램을 설치할때...
[ ] - [ ] - [ ] - [ ]
위와 같은 식으로 폼이 나뉘어져 있고...
AAAA-BBBB-CCCC-DDDD
이런식의 시리얼번호를 복사해서 바로 붙이기 하면 한번에 폼안에 들어가는 경우가 있습니다.

웹에서도 마찬가지로 사업자번호와 같은 것을 복사하고 붙이고자 하는 경우가 있는데...
위와 같이 각기 나뉘어진 폼이라면 한번에 붙이가 되진 않겠죠...

그래서 아래와 같은 소스를 만들어 보았는데요...

붙이기 이벤트가 일어나면 복사되어있는 문자들을 가져다가 폼에 순서대로 붙여 주는 형태 입니다.



<form name=reg>
<input type=text name=a size=3 maxlength=3 onPaste="catchPaste(this.form);event.returnValue=false">
-
<input type=text name=b size=2 maxlength=2>
-
<input type=text name=c size=5 maxlength=5>
</form>

<textarea style=visibility:hidden id=temp></textarea>

<script>
function catchPaste(obj)
{
var cnt=0;

temp.innerHTML='';
obj.a.value='';
obj.b.value='';
obj.c.value='';

var doc=document.body.createTextRange();
doc.moveToElementText(document.all('temp'));
doc.execCommand('paste');

source=temp.innerHTML;

for(var i=0; i<source.length; i++)
{
sourceChar = source.substr(i,1);

if(sourceChar=='-')
{
continue;
}

if(cnt<3)
{
obj.a.value+=sourceChar;
}
else if(cnt<5)
{
obj.b.value+=sourceChar;
}
else if(cnt<10)
{
obj.c.value+=sourceChar;
}
else
{
return;
}

cnt++;
}
}
</script>
Posted by 알 수 없는 사용자
,