숫자에 컴마(,) 쓰고 한글로 숫자 표시
페이지 정보
작성자 MintState 댓글 0건 조회 15,234회 작성일 10-06-09 14:20본문
숫자에 컴마(,) 쓰고 한글로 숫자 표시
컴마만 붙이고 한글은 표시하지 않을 경우 won_format(this,''); 와 같이 쓰면 됩니다.
<html>
<head>
<script language="javascript">
function won_format(chknum,hanview) {
val = chknum.value;
re = /^[1-9][0-9]*$/;
var num = val.toString().split(',').join('');
if (!re.test(num)) {
chknum.value = '';
if (hanview) document.getElementById(hanview).innerHTML = '';
} else {
//num = num.split(',').join('');
var arr = num.split('.');
var num = new Array();
for (i = 0; i <= arr[0].length-1; i++) {
num[i] = arr[0].substr(arr[0].length-1-i,1);
if(i%3 == 0 && i != 0) num[i] += ',';
}
num = num.reverse().join('');
if (!arr[1]) chknum.value = num; else chknum.value = num+'.'+arr[1];
if (hanview) num2won(chknum,hanview);
}
}
function num2won(chknum,hanview) {
val = chknum.value;
var won = new Array();
re = /^[1-9][0-9]*$/;
var num = val.toString().split(',').join('');
if (!re.test(num)) {
chknum.value = '';
document.getElementById(hanview).innerHTML = '';
} else {
var price_unit0 = new Array('','일','이','삼','사','오','육','칠','팔','구');
var price_unit1 = new Array('','십','백','천');
var price_unit2 = new Array('','만','억','조','경','해','시','양','구','간','정');
for(i = num.length-1; i >= 0; i--) {
won[i] = price_unit0[num.substr(num.length-1-i,1)];
if(i > 0 && won[i] != '') won[i] += price_unit1[i%4];
if(i % 4 == 0) won[i] += price_unit2[(i/4)];
}
for(i = num.length-1; i >= 0; i--) {
if(won[i].length == 2) won[i-i%4] += '-';
if(won[i].length == 1 && i > 0) won[i] = '';
if(i%4 != 0) won[i] = won[i].replace('일','');
}
won = won.reverse().join('').replace(/-+/g,'');
document.getElementById(hanview).innerHTML = won;
}
}
</script>
</head>
<body>
<input type="text" name="won" style="text-align:right;" onkeyup="won_format(this,'hanview');"> 원 입력 <span id="hanview" style='background-color:#EEEEEE'></span> 원
</body>
</html>
컴마만 붙이고 한글은 표시하지 않을 경우 won_format(this,''); 와 같이 쓰면 됩니다.
|
|
댓글목록
등록된 댓글이 없습니다.





숫자에 컴마(,) 쓰고 한글로 숫자 표시