小寫數字金額,轉換成大寫中文,絕無錯誤

小寫數字金額,轉換成大寫中文,絕無錯誤
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;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章