求输入金额格式的JS代码,谢谢!
千分位分隔的很容易解决,但现在有个需要,网上没找到:
     若输入了10000,需要格式是:10,000.00
     若输入了10000.99,需要的格式是:10,000.99
     若输入了10000.999,需要格式:10,001.00(四舍五入)
不能输入, .以外的符号
不懂JS啊,请问可以帮我解决吗?谢谢。
------解决方案--------------------
<script>
window.onload=function(){
   var obj=document.getElementById("txt1");
   var flg=false;
   obj.onfocus=function(){flg=false;};
   obj.onkeypress=function(){
       var v=String.fromCharCode(event.keyCode);
           v=this.value+v;
           flg=false;
       if(!v.match(/^-$|^-?\d+[.]$|^-?\d+([.]\d+)?$/))return false;
       flg=true;
   }
   obj.onblur=function(){
       if(!flg)return;
       this.value="$"+this.value.replace(/([\d]+?)(?=(?:\d{3}([.]\d+)?)+$)/g,
           function($0,$1,$2,lastIndex,str){
               if(str.substring(0,lastIndex+4).indexOf(".")!=-1)return $1;
               return $1+",";
           });
   }
}
</script>
<input id=txt1>1234567890a
需要格式的话转换一下就行了。
------解决方案--------------------
------解决方案--------------------JScript code
var x = parseFloat('1000000000.00');
document.write(x.toLocaleString());