JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码


Posted in Javascript onSeptember 30, 2013
 <!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=gb2312" />
<title>无标题文档</title>
<script type="text/javascript" language="javascript">
function clickchange(obj){
var aaval=obj.value;
alert(aaval);
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;
}
</script>
</head>
<body>
<input type="text" id="aa" onblur="clickchange(this)" />
<input type="text" id="bb" />
</body>
</html>
 
Javascript 相关文章推荐
JQuery AJAX 中文乱码问题解决
Jun 05 Javascript
Jquery easyui 下loaing效果示例代码
Aug 12 Javascript
javascript setinterval 的正确语法如何书写
Jun 17 Javascript
jquery mobile页面跳转后样式丢失js失效的解决方法
Sep 06 Javascript
jQuery判断当前点击的是第几个li的代码
Sep 26 Javascript
Thinkphp模板没有解析直接原样输出的解决方法
Oct 31 Javascript
javascript中关于&amp;&amp; 和 || 表达式的小技巧分享
Apr 10 Javascript
基于jQuery插件实现点击小图显示大图效果
May 11 Javascript
10个最优秀的Node.js MVC框架
Aug 24 Javascript
vue实现菜单切换功能
May 08 Javascript
JS 遍历 json 和 JQuery 遍历json操作完整示例
Nov 11 jQuery
原生JS实现九宫格抽奖
Sep 13 Javascript
js防止表单重复提交的两种方法
Sep 30 #Javascript
js借助ActiveXObject实现创建文件
Sep 29 #Javascript
js获取URL的参数的方法(getQueryString)示例
Sep 29 #Javascript
在父页面调用子页面的JS方法
Sep 29 #Javascript
javascript完美拖拽的实现方法
Sep 29 #Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
Sep 29 #Javascript
js中的scroll和offset 使用比较的实例与分析
Sep 29 #Javascript
You might like
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
2007/01/29 PHP
PHP中phar包的使用教程
2017/06/14 PHP
Swoole扩展的6种模式深入详解
2021/03/04 PHP
用js实现的页面关键字密度查询代码
2007/12/27 Javascript
javascript 时间比较实现代码
2009/10/28 Javascript
Ext.MessageBox工具类简介
2009/12/10 Javascript
关于window.pageYOffset和document.documentElement.scrollTop
2011/04/05 Javascript
Ext.get() 和 Ext.query()组合使用实现最灵活的取元素方式
2011/09/26 Javascript
对javascript的一点点认识总结《javascript高级程序设计》读书笔记
2011/11/30 Javascript
ie7+背景透明文字不透明超级简单的实现方法
2014/01/17 Javascript
用jquery写的一个万年历(自写)
2014/01/20 Javascript
JQuery中使用.each()遍历元素学习笔记
2014/11/08 Javascript
JavaScript中的Math.atan2()方法使用详解
2015/06/15 Javascript
使用Javascript写的2048小游戏
2015/11/25 Javascript
详解在vue-cli中使用路由
2017/09/25 Javascript
基于vue实现移动端圆形旋钮插件效果
2018/11/28 Javascript
ES6 Symbol数据类型的应用实例分析
2019/06/26 Javascript
vue使用showdown并实现代码区域高亮的示例代码
2019/10/17 Javascript
在vue中使用防抖函数组件操作
2020/07/26 Javascript
解决Mint-ui 框架Popup和Datetime Picker组件滚动穿透的问题
2020/11/04 Javascript
vue集成一个支持图片缩放拖拽的富文本编辑器
2021/01/29 Vue.js
[02:48]DOTA2英雄基础教程 拉席克
2013/12/12 DOTA
[59:53]DOTA2-DPC中国联赛 正赛 VG vs Elephant BO3 第二场 3月6日
2021/03/11 DOTA
使用Python实现windows下的抓包与解析
2018/01/15 Python
基于循环神经网络(RNN)实现影评情感分类
2018/03/26 Python
Django框架模板的使用方法示例
2019/05/25 Python
Python利用matplotlib做图中图及次坐标轴的实例
2019/07/08 Python
TensorFlow中如何确定张量的形状实例
2020/06/23 Python
护士岗前培训自我评鉴
2014/02/28 职场文书
《猴子种果树》教学反思
2014/04/26 职场文书
2015新学期家长寄语
2015/02/26 职场文书
2015年信息宣传工作总结
2015/05/26 职场文书
2016公司中秋节寄语
2015/12/07 职场文书
纯CSS实现酷炫的霓虹灯效果
2021/04/13 HTML / CSS
python自动化操作之动态验证码、滑动验证码的降噪和识别
2021/08/30 Python
利用Python实现模拟登录知乎
2022/05/25 Python