金钱的大写形式的重要性是不言而喻的,这可以有效的防止对已有数字的篡改,本章节分享一段代码,能够将阿拉伯数字形式的金额转换为大写形式,代码实例如下:
   [ 其他 ] 运行代码    下载代码
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.51qianduan.com/" />
<title>51前端</title>
<script type="text/javascript">
function clickchange(obj)
{
  var aaval=obj.value;
  document.getElementById("bb").value=ChinaCost(aaval);
}
function ChinaCost(numberValue)
{
  var numberValue=new String(Math.round(numberValue*100)); // 数字金额
  var chineseValue=""; // 转换后的汉字金额
  var String1 = "零壹贰叁肆伍陆柒捌玖"; // 汉字数字
  var String2 = "万仟佰拾亿仟佰拾万仟佰拾元角分"; // 对应单位
  var len=numberValue.length; // numberValue 的字符串长度
  var Ch1; // 数字的汉语读法
  var Ch2; // 数字位的汉字读法
  var nZero=0; // 用来计算连续的零值的个数
  var String3; // 指定位置的数值
  if(len>15)
  {
    alert("超出计算范围");
    return "";
  }
  if(numberValue==0)
  {
    chineseValue = "零元整";
    return chineseValue;
  }
  String2 = String2.substr(String2.length-len, len); // 取出对应位数的STRING2的值
  for(var i=0; i<len; i++)
  {
    String3 = parseInt(numberValue.substr(i, 1),10); // 取出需转换的某一位的值
    if(i!= (len - 3) && i != (len - 7) && i != (len - 11) && i !=(len - 15) )
    {
      if( String3 == 0 )
      {
        Ch1 = "";
        Ch2 = "";
        nZero = nZero + 1;
      }
      else if( String3 != 0 && nZero != 0 )
      {
        Ch1 = "零" + String1.substr(String3, 1);
        Ch2 = String2.substr(i, 1);
        nZero = 0;
      }
      else
      {
        Ch1 = String1.substr(String3, 1);
        Ch2 = String2.substr(i, 1);
        nZero = 0;
      }
    }
    else // 该位是万亿,亿,万,元位等关键位
    {
      if( String3 != 0 && nZero != 0 )
      {
        Ch1 = "零" + String1.substr(String3, 1);
        Ch2 = String2.substr(i, 1);
        nZero = 0;
      }
      else if( String3 != 0 && nZero == 0 )
      {
        Ch1 = String1.substr(String3, 1);
        Ch2 = String2.substr(i, 1);
        nZero = 0;
      }
      else if( String3 == 0 && nZero >= 3 )
      {
        Ch1 = "";
        Ch2 = "";
        nZero = nZero + 1;
      }
      else
      {
        Ch1 = "";
        Ch2 = String2.substr(i, 1);
        nZero = nZero + 1;
      }
      if( i == (len - 11) || i == (len - 3))// 如果该位是亿位或元位,则必须写上
      { 
        Ch2 = String2.substr(i, 1);
      }
    }
    chineseValue = chineseValue + Ch1 + Ch2;
  }
  if ( String3 == 0 )// 最后一位(分)为0时,加上"整"
  { 
    chineseValue = chineseValue + "整";
  }
  return chineseValue;
}
window.onload=function()
{
  var bt=document.getElementById("bt");
  var aa=document.getElementById("aa");
  bt.onclick=function(){clickchange(aa)}
}
</script>
</head>
<body>
<input type="text" id="aa" />
<input type="text" id="bb" />
<input type="button" value="转换" id="bt" />
</body>
</html>

代码描述:JavaScript 金钱金额 大写形式。JavaScript将金钱的金额转换为大写形式



194 259



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到