數字貨幣轉換為中文貨幣

來源:互聯網
上載者:User

標籤:http   java   os   art   javascript   html   

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>數字貨幣到中文貨幣的轉換</title>
<script type="text/javascript" language="javascript">

function Transform()
{
 
 var num =document.getElementById("num").value;
 for(i=num.length-1;i>=0;i--)
 {
  num=num.replace(",","");//替換文字框中的“,”
  num=num.replace(" ","");//替換文字框中的空格 
 } 

num=num.replace("¥","");//替換掉可能出現的¥字元
 if(isNaN(num))
 {
  //驗證輸入的字元是否為數字
  alert("請檢查輸入的金額是否正確");
  return; 
 }

//---字元處理完畢,開始轉換,轉換採用前後兩部分分別轉換---//
 part=new String(num).split(‘.‘);
 newchar="";
 //小數點前進行轉化
 for(i=part[0].length-1;i>=0;i--)
 {
  if(part[0].length>10)
  {
   alert("為數過大,無法計算");
   return"";
  }
  //若數量超過拾億單位,提示=
  tmpnewchar=""
  var 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:
                if (perchar != 0)
                    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;
 }

//小數點之後進行轉化
 if(num.indexOf(".")!=-1)
 {
  if(part[1].length>2)
  {
   alert("小數點之後只能保留兩位,系統將自動截段");
   part[1]=part[1].substr(0,2)
  }
  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("零角","");
 newcahr=newchar.replace("零分","");
 if(newchar.charAt(newchar.length-1)=="元"||newchar.charAt(newchar.length-1)=="角")
 newchar=newchar+"整";
 alert(newchar);
}
</script>

<body>
<form action="" method="post" name="form1">
  數字貨幣:
  <input type="text" name="num" id="num" />
  <input type="button" name="btn1" id="button" value="轉換" onclick="Transform()"/>
</form>
</body>
</html>

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.