JAVASCRIPT 当光标离开时加上千分符

来源:互联网 发布:绝地求生amd显卡优化 编辑:程序博客网 时间:2024/05/22 00:30
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT>
/**************************************************************** 
* 机  能: Format Number ###,###,##0.00
* 参  数: value , has point
* 返回  : Format value 
***************************************************************
*/

function FormatNum(objValue,hasPoint,pointLength)
{
    objValue 
=objValue.toString();
    
if(objValue.trim().length<=0){
        
return "";    
    }

    
    
var Num=objValue.trim();
    
if(Num == "0."){
        Num 
= "0";
    }

    
for(var i=0;i<objValue.length;i++)
    
{
        
var c=objValue.charAt(i);
        
if(c=='0'){
            Num
=Num.replace('0','')
        }

        
else
        
{
            
break;
        }

        
    }

    
if(Num.length<=0)
    
{
        Num 
= "0";
    }

    NumStr 
= Num.toString().replace(/,/g,'');
    
if(isNumber(NumStr.replace('.',''))==false){
        
return objValue;
    }

    
    Num
=NumStr;
    
var NewNumStr = new String();
    
var PAt =  Num.toString().indexOf(".");
    
var MAt = Num.toString().indexOf("-");
    
if(PAt != -1)
    
{
        Num 
=( Math.round(Num * Math.pow (10 , pointLength)) / Math.pow(10 , pointLength));
        NumStr 
=  Num.toString().substr(0,PAt);
    }

    
    
if(MAt !=-1)
    
{
        NumStr 
=NumStr.replace('-','');
    }

    
while(NumStr.length > 3)
    
{
        NewNumStr 
= "," + NumStr.substr(NumStr.length - 3,NumStr - 1+ NewNumStr;
        NumStr 
= NumStr.substr(0,NumStr.length - 3);
    }

    
if(hasPoint==true)
    
{
        
if(PAt != -1)
        
{
            NewNumStr 
= NumStr + NewNumStr + Num.toString().substr(PAt);
        }

        
else
        
{
            NewNumStr 
= NumStr + NewNumStr +".0";
        }

        
var PAtTemp = NewNumStr.toString().indexOf(".")
        
if( PAtTemp!= -1){
            
var PAtValue = NewNumStr.toString().substr(PAtTemp);
            
for(var i =PAtValue.length;i<=pointLength;i++)
            
{
                NewNumStr 
= NewNumStr+"0";
            }

        }

        
else{
            
for(var i =0;i<=pointLength-1;i++)
            
{
                
if (i==0)
                
{
                    NewNumStr 
= NewNumStr+"."
                }

                NewNumStr 
= NewNumStr+"0";
                
            }

        }
    
    }

    
else
    
{
        NewNumStr 
= NumStr + NewNumStr;
    }
    
    
if(MAt !=-1)
    
{
        NewNumStr 
="-" + NewNumStr;
    }

    
    
return NewNumStr;
}

/**************************************************************** 
* 机  能: ストリングのスペースを取り除く
***************************************************************
*/

String.prototype.trim
= function()  
{  
    
return this.replace(/(^s*)|(s*$)/g, "");  
}

/**************************************************************** 
* 机  能: 数値チェック
* 参  数: s 入力された値 
* 返回  : 正:true 不正:false 
***************************************************************
*/
 
function isNumber( s ){   
    
var regu = "^[-+]?[0-9]+$"
    
var re = new RegExp(regu); 
    
if (s.search(re) != -1
        
return true
    }
 else 
        
return false
    }
 
}
 
function testBlur(){
    
var ret;            
    ret 
= document.all("test1").value;
    document.all(
"test1").value = FormatNum(ret,true,1);
}

</SCRIPT>
</HEAD>

<BODY>
<INPUT TYPE="text" id="test1" onblur="testBlur();">
</BODY>
</HTML>
 
原创粉丝点击