排一下版:
function chinesemoney() // 小写金额转(中文)大写
{
var money=event.srcElement.value;
money=String(eval(money)+0.005); //小数四舍五入
var num = '零壹贰叁肆伍陆柒捌玖';
var unit = '千百拾亿千百拾万千百拾元';
var unit0= '角分';
var dax ='';
var dian=money.indexOf('.');
if (dian<0)
{
dian=money.length;
}
if (eval(money)>=0.01)//防止显示空值和小于0.5分的值
{
var money1=money.substr(0,dian);
for (var i=0; i < money1.length; i++)
{
var aaa=money1.substr(i,1);
var shu=eval(aaa);
dax=dax+num.substr(shu,1)+unit.substr(12-money1.length+i,1);
}
var xs=money.substr(dian+1,2);
if (eval(xs)>0)
{
money1=money.substr(dian+1,1);
shu=eval(money1);
var money2=money.substr(dian+2,1);
var fen=eval(money2);
dax=dax+num.substr(shu,1)+unit0.substr(0,1)+num.substr(fen,1)+unit0.substr(1,1);
}
if(eval(xs)==0 || eval(xs)==null)
{
dax=dax+'整';
}
event.srcElement.value=dax;//原处显示
return dax;
}
}
function chinesemoney() // 小写金额转(中文)大写
{
var money=event.srcElement.value;
money=String(eval(money)+0.005); //小数四舍五入
var num = '零壹贰叁肆伍陆柒捌玖';
var unit = '千百拾亿千百拾万千百拾元';
var unit0= '角分';
var dax ='';
var dian=money.indexOf('.');
if (dian<0)
{
dian=money.length;
}
if (eval(money)>=0.01)//防止显示空值和小于0.5分的值
{
var money1=money.substr(0,dian);
for (var i=0; i < money1.length; i++)
{
var aaa=money1.substr(i,1);
var shu=eval(aaa);
dax=dax+num.substr(shu,1)+unit.substr(12-money1.length+i,1);
}
var xs=money.substr(dian+1,2);
if (eval(xs)>0)
{
money1=money.substr(dian+1,1);
shu=eval(money1);
var money2=money.substr(dian+2,1);
var fen=eval(money2);
dax=dax+num.substr(shu,1)+unit0.substr(0,1)+num.substr(fen,1)+unit0.substr(1,1);
}
if(eval(xs)==0 || eval(xs)==null)
{
dax=dax+'整';
}
event.srcElement.value=dax;//原处显示
return dax;
}
}
解决方案 »
- 求一个类似手风琴的效果
- Onunload在IE6和IE7/8/9的区别
- \s*为什么匹配不到abc (abc后有空格)后面的空格???
- 页面上有个表单,能否实现:点击“提交”,但是不转向另一个页面,也不弹出新页面
- 请教大师们,如何写一个座机与手机可以并存的正则
- 还是js 提交时倒计时,用在我程序里不行啊 崩出来一下就没了,帮帮忙啊!
- 求助这个JS怎么写
- 请教一个checkbox传值的问题?谢谢
- 100分求:谁能写个修改MSN messenger版本的网页?
- 点击连接,强制下载,html也不例外,怎么实现??
- 高级功能--如何动态获得下拉框的值??在线等待噢~
- 想在网站订阅别人blog的内容,就象csdn首页上面的"专家Blogs",不知道怎么实现?
function Chinese(num) //将阿拉伯数字翻译成中文的大写数字
{
if(!/^\d*(\.\d*)?$/.test(num)) throw(new Error(-1, "Number is wrong!")); var AA = new Array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");
var BB = new Array("","拾","佰","仟","萬","億","圆","");
var CC = new Array("角", "分", "厘");
var a = (""+ num).replace(/(^0*)/g, "").split("."), k = 0, re = ""; for(var i=a[0].length-1; i>=0; i--) //author: meizz
{
switch(k)
{
case 0 : re = BB[7] + re; break;
case 4 : if(!new RegExp("0{4}\\d{"+ (a[0].length-i-1) +"}$").test(a[0]))
re = BB[4] + re; break;
case 8 : re = BB[5] + re; BB[7] = BB[5]; k = 0; break;
}
if(k%4 == 2 && a[0].charAt(i)=="0" && a[0].charAt(i+2) != "0") re = AA[0] + re;
if(a[0].charAt(i) != 0) re = AA[a[0].charAt(i)] + BB[k%4] + re; k++;
} if(a.length>1) //加上小数部分(如果有小数部分)
{
re += BB[6];
for(var i=0; i<a[1].length; i++)
{
re += AA[a[1].charAt(i)] + CC[i];
if(i==2) break;
}
}
return re;
}
document.write(Chinese("2345678.6792"));