小写数字金额,转换成大写中文,绝无错误

小写数字金额,转换成大写中文,绝无错误
function  mxb(){  
newchar="";

Num=document.form1.money.value;

for(i=Num.length-1;i>=0;i--)  
{  
Num  =  Num.replace(",","")//替换tomoney()中的“,”  
Num  =  Num.replace("  ","")//替换tomoney()中的空格  
Num  =  Num.replace("¥","")//替换掉可能出现的¥字符  
}  

if(isNaN(Num))  
{  //验证输入的字符是否为数字  
alert("请检查小写金额是否正确");  
return;  
}
//小数点前进行转化  
part  =  String(Num).split(".");  
newchar  =  "";  
for(i=part[0].length-1;i>=0;i--){  
if(part[0].length  >  10){  alert("位数过大,无法计算");return  "";}//若数量超过拾亿单位,提示  
tmpnewchar  =  ""  
perchar  =  part[0].charAt(i);  
switch(perchar){  
case  "0":  tmpnewchar="零"  +  tmpnewchar  ;break;  
case  "1":  tmpnewchar="壹"  +  tmpnewchar  ;break;  
case  "2":  tmpnewchar="贰"  +  tmpnewchar  ;break;
case  "3":  tmpnewchar="叁"  +  tmpnewchar  ;break;  
case  "4":  tmpnewchar="肆"  +  tmpnewchar  ;break;  
case  "5":  tmpnewchar="伍"  +  tmpnewchar  ;break;  
case  "6":  tmpnewchar="陆"  +  tmpnewchar  ;break;  
case  "7":  tmpnewchar="柒"  +  tmpnewchar  ;break;  
case  "8":  tmpnewchar="捌"  +  tmpnewchar  ;break;  
case  "9":  tmpnewchar="玖"  +  tmpnewchar  ;break;  
}  
switch(part[0].length-i-1){  
case  0:  tmpnewchar  =  tmpnewchar  +"元"  ;break;  
case  1:  if(perchar!=0)tmpnewchar=  tmpnewchar  +"拾"  ;break;  
case  2:  if(perchar!=0)tmpnewchar=  tmpnewchar  +"佰"  ;break;  
case  3:  if(perchar!=0)tmpnewchar=  tmpnewchar  +"仟"  ;break;  
case  4:  tmpnewchar=  tmpnewchar  +"万"  ;break;  
case  5:  if(perchar!=0)tmpnewchar=  tmpnewchar  +"拾"  ;break;  
case  6:  if(perchar!=0)tmpnewchar=  tmpnewchar  +"佰"  ;break;  
case  7:  if(perchar!=0)tmpnewchar=  tmpnewchar  +"仟"  ;break;  
case  8:  tmpnewchar=  tmpnewchar  +"亿"  ;break;  
case  9:  tmpnewchar=  tmpnewchar  +"拾"  ;break;  
}  
newchar  =  tmpnewchar  +  newchar;  
}

//for循环结束


if(Num.indexOf(".")!=-1){  
for(i=0;i<part[1].length;i++){  
tmpnewchar  =  ""  
perchar  =  part[1].charAt(i)  
switch(perchar){  
case  "0":  tmpnewchar="零"  +  tmpnewchar  ;break;  
case  "1":  tmpnewchar="壹"  +  tmpnewchar  ;break;  
case  "2":  tmpnewchar="贰"  +  tmpnewchar  ;break;  
case  "3":  tmpnewchar="叁"  +  tmpnewchar  ;break;  
case  "4":  tmpnewchar="肆"  +  tmpnewchar  ;break;
case  "5":  tmpnewchar="伍"  +  tmpnewchar  ;break;  
case  "6":  tmpnewchar="陆"  +  tmpnewchar  ;break;  
case  "7":  tmpnewchar="柒"  +  tmpnewchar  ;break;  
case  "8":  tmpnewchar="捌"  +  tmpnewchar  ;break;  
case  "9":  tmpnewchar="玖"  +  tmpnewchar  ;break;  
}  
if(i==0)tmpnewchar  =tmpnewchar  +  "角";  
if(i==1)tmpnewchar  =  tmpnewchar  +  "分";  
newchar  =  newchar  +  tmpnewchar;  
}  

}  
//替换所有无用汉字  
while(newchar.search("零零")  !=  -1)  {
newchar  =  newchar.replace("零零",  "零");  
newchar  =  newchar.replace("零亿",  "亿");  
newchar  =  newchar.replace("亿万",  "亿");  
newchar  =  newchar.replace("零万",  "万");  
newchar  =  newchar.replace("零元",  "元");  
newchar  =  newchar.replace("零元",  "元");  
newchar  =  newchar.replace("零角",  "");  
newchar  =  newchar.replace("零分",  "");  
}

newchar  =  newchar+"整";
<!--alert("请确认你录入的金额和类别!!!"+"n"+"n"+"类别为:"+document.form1.kind.value+"n"+"n"+"金额:"+"n"+"n"+newchar);--!>
document.form1.chinamoney.value=newchar;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值