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 Clone Bug解决代码
Dec 22 Javascript
有关于JS辅助函数inherit()的问题
Apr 07 Javascript
实例讲解JavaScript的Backbone.js框架中的View视图
May 05 Javascript
ionic在开发ios系统微信时键盘挡住输入框的解决方法(键盘弹出问题)
Sep 06 Javascript
浅谈jquery的html方法里包含特殊字符的处理
Nov 30 Javascript
JS正则表达式修饰符global(/g)用法分析
Dec 27 Javascript
angular-ngSanitize模块-$sanitize服务详解
Jun 13 Javascript
javascript与PHP动态往类中添加方法对比
Mar 21 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
Aug 01 Javascript
laravel实现中文和英语互相切换的例子
Sep 30 Javascript
浅谈webpack构建工具配置和常用插件总结
May 11 Javascript
JavaScript enum枚举类型定义及使用方法
May 15 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
PHP操作文件方法问答
2007/03/16 PHP
zend optimizer在wamp的基础上安装图文教程
2013/10/26 PHP
教你如何开启shopnc b2b2c 伪静态
2014/10/21 PHP
PHP中浮点数计算比较及取整不准确的解决方法
2015/01/09 PHP
php实现递归与无限分类的方法
2015/02/16 PHP
5款适合PHP使用的HTML编辑器推荐
2015/07/03 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
javascript打开新窗口同时关闭旧窗口
2009/01/16 Javascript
firefox下对ajax的onreadystatechange的支持情况分析
2009/12/14 Javascript
JavaScript插入动态样式实现代码
2012/02/22 Javascript
JS图片无缝、平滑滚动代码
2014/03/11 Javascript
js获取及判断键盘按键的方法
2015/12/01 Javascript
JavaScript第一篇之实现按钮全选、功能
2016/08/21 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
jQuery+CSS实现的table表格行列转置功能示例
2018/01/08 jQuery
以v-model与promise两种方式实现vue弹窗组件
2018/05/21 Javascript
vue 实现axios拦截、页面跳转和token 验证
2018/07/17 Javascript
angularJS自定义directive之带参方法传递详解
2018/10/09 Javascript
浅谈react-router@4.0 使用方法和源码分析
2019/06/04 Javascript
element的el-table中记录滚动条位置的示例代码
2019/11/06 Javascript
15分钟上手vue3.0(小结)
2020/05/20 Javascript
用Python创建声明性迷你语言的教程
2015/04/13 Python
python使用Queue在多个子进程间交换数据的方法
2015/04/18 Python
Python内置模块hashlib、hmac与uuid用法分析
2018/02/12 Python
flask-socketio实现WebSocket的方法
2018/07/31 Python
Python使用sax模块解析XML文件示例
2019/04/04 Python
详解Python的三种可变参数
2019/05/08 Python
python全栈要学什么 python全栈学习路线
2019/06/28 Python
Python如何使用PIL Image制作GIF图片
2020/05/16 Python
如何基于Python实现word文档重新排版
2020/09/29 Python
美国知名的旅游网站:OneTravel
2018/10/09 全球购物
J2EE模式面试题
2016/10/11 面试题
后勤人员自我评价怎么写
2013/09/19 职场文书
工伤私了协议书范本
2014/11/24 职场文书
python 如何用map()函数创建多线程任务
2021/04/07 Python
十大最强格斗系宝可梦,超梦X仅排第十,第二最重格斗礼仪
2022/03/18 日漫