테스트 사이트 - 개발 중인 베타 버전입니다

금액을 한글로 표기 해주는 스크립트;

· 12년 전 · 2677 · 1

<script>
function trans_han(sour, targ){
s = document.getElementsByName(sour)[0].value;
t = document.getElementById(targ);
if(s.length > 16){
t.innerHTML = '숫자가 너무 큽니다';
return;
} else if(isNaN(s)){
t.innerHTML = '숫자가 아닙니다';
return;
}
b1 = ' 일이삼사오육칠팔구';
b2 = '천백십조천백십억천백십만천백십원';
tmp = '';
cnt = 0;
while(s != ''){
cnt++;
tmp1 = b1.substring(s.substring(s.length-1,s.length), Number(s.substring(s.length-1,s.length))+1); // 숫자
tmp2 = b2.substring(b2.length-1,b2.length); // 단위
if(tmp1==' '){ // 숫자가 0일때
if(cnt%4 == 1){ // 4자리로 끊어 조,억,만,원 단위일때만 붙여줌
tmp = tmp2 + tmp;
}
} else{
if(tmp1 == '일' && cnt%4 != 1){ // 단위가 조,억,만,원일때만 숫자가 일을 붙여주고 나머지는 생략 ex) 삼백일십만=> 삼백십만
tmp = tmp2 + tmp;
} else{
tmp = tmp1 + tmp2 + tmp; // 그외에는 단위와 숫자 모두 붙여줌
}
}
b2 = b2.substring(0, b2.length-1);
s = s.substring(0, s.length-1);
}
tmp = tmp.replace('억만','억').replace('조억','조'); // 조,억,만,원 단위는 모두 붙였기 때문에 필요없는 단위 제거
t.innerHTML = tmp;
}
</script>

<input type='text' name='price' size='15' maxlength='16' onkeyup="trans_han(this.name,'trans_price');" /> <span id='trans_price'></span>

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 1개

감사요~

게시글 목록

번호 제목
4851
30604
4842
26788
4847
4839
4838
24428
30600
28442
4835
4831
4825
26775
26768
4821
4818
4815
4804
4800
4796
26757
4792
18160
26754
4786
18157
4782
4777
18152
4775
4768
4763
4758
4756
4751
4740
26746
26736
4737
4731
4726
26726
4719
26403
4713
26398
4711
4706
28437
26709
18151
4705
4699
24421
4696
18150
18149
18148
18146
26397
26694
26679
4693
개발자 리자님? 2
4684
18145
JavaScript getHtmlInfo
26664
26656
28434
4681
28432
4673
4665
4660
26648
4656
4648
4649
4652
26642
4632
26630
4627
4622
18142
4606
4592
4583
4575
26616
4565
4550
4545
4524
28422
26611
4520
26600
28408
4516