functionchangeMoneyToChinese(money)
{
varcnNums= newArray("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");//汉字的数字
varcnIntRadice= newArray("","拾","佰","仟");//基本单位
varcnIntUnits= newArray("","万","亿","兆");//对应整数部分扩展单位
varcnDecUnits= newArray("角","分","毫","厘");//对应小数部分单位
varcnInteger="整";//整数金额时后面跟的字符
varcnIntLast="元";//整型完以后的单位
varmaxNum=999999999999999.9999;//最大处理的数字
varIntegerNum;//金额整数部分
varDecimalNum;//金额小数部分
varChineseStr="";//输出的中文金额字符串
varparts;//分离金额后用的数组,预定义
if( money==""){
return"";
}
money=parseFloat(money);
//alert(money);
if( money>=maxNum ){
$.alert('超出最大处理数字');
return"";
}
if( money==0){
ChineseStr=cnNums[0]+cnIntLast+cnInteger;
//document.getElementById("show").value=ChineseStr;
returnChineseStr;
}
money=money.toString();//转换为字符串
if( money.indexOf(".")== -1){
IntegerNum=money;
DecimalNum='';
}else{
parts=money.split(".");
IntegerNum=parts[0];
DecimalNum=parts[1].substr(0,4);
}
if( parseInt(IntegerNum,10)>0){//获取整型部分转换
zeroCount=0;
IntLen=IntegerNum.length;
for( i=0;i
n=IntegerNum.substr(i,1);
p=IntLen-i-1;
q=p/4;
m=p%4;
if( n=="0"){
zeroCount++;
}else{
if( zeroCount>0){
ChineseStr+=cnNums[0];
}
zeroCount=0;//归零
ChineseStr+=cnNums[parseInt(n)]+cnIntRadice[m];
}
if( m==0&&zeroCount<4){
ChineseStr+=cnIntUnits[q];
}
}
ChineseStr+=cnIntLast;
//整型部分处理完毕
}
if( DecimalNum!=''){//小数部分
decLen=DecimalNum.length;
for( i=0; i
n=DecimalNum.substr(i,1);
if( n!='0'){
ChineseStr+=cnNums[Number(n)]+cnDecUnits[i];
}
}
}
if( ChineseStr==''){
ChineseStr+=cnNums[0]+cnIntLast+cnInteger;
}
else if( DecimalNum==''){
ChineseStr+=cnInteger;
}
returnChineseStr;
}