验证输入的正确性

/*
Date    : 2003-12-10
History : Create
Purpose : 验证输入数据的准确性,是否按照预定格式
*/
function ValidateDataType( strDataType ) 
{
    
var Reg ;
    
var sExample
    
if ( strDataType.match( "money") )
    {
        Reg 
= /^\d+(,\d\d\d)*(\.\d*)?$/g ;//Deal as double
        sExample = "\n123  \n23456.78  \n23,456.78  \n0.12  \n.12  \n";
    }
    
else if ( strDataType.match( "datetime") )
    {
        Reg 
= /^([1-2]\d{3})(-|\.)(0?[1-9]|10|11|12)(-|\.)(([0-2]?[1-9])|10|20|30|31)$/g ;
        sExample 
= "\n2003-08-24  2003.08.24\n1998-12-1  1998.12.1";
    }    
    
else if ( strDataType.match( "numeric") )
    {
        Reg 
= /^\d+(,\d\d\d)*(\.\d*)?$/g ;
        sExample 
= "\n123  \n23456.78  \n23,456.78  \n0.12 \n";
    }
    
else if ( strDataType.match( "wint") )
    {
        Reg 
= /^\-*\d+(,\d\d\d)*$/g ;
        sExample 
= "\n20  \n-1  \n";
    }        
    
else if ( strDataType.match( "listint") )
    {
        Reg 
= /^\d+((,\d+)|(\-|\-\d+(,\d+)*))*$/g ;
        sExample 
= "\n8 \n1,2,4 \n1,2,6-8,12- \n";
    }
    
else if ( strDataType.match( "int") )
    {
        Reg 
= /^\d+(,\d\d\d)*$/g ;
        sExample 
= "\n23456  \n23,456  \n";
    }    
    
else if ( strDataType.match( "tinyint") )
    {
        
//Reg = /^\d+(,\d\d\d)*$/g ;
        Reg = /^[0-2]+\d*$/g ;
        sExample 
= "\n255  \n255  \n";
    }
    
else 
    {
        Reg 
= /^.*$/g ;
        sExample 
= "a2~!@#$%^&*()_+,./;':";
    }
    
    
var e = window.event.srcElement;
    
var str = e.value;
    
if ( str == "" ) return;
    
if ( Reg.exec( str )) return;
    alert(
" 错误 : 值 [ " + str + " ] 非法," + " \n\n正确的格式如下所示 : " + sExample    ); 
    e.focus();
}

/*
Date    : 2003-12-10
History : Create
Purpose : 将浮点数格式化成只流小数两位,按照四舍五入方式
*/
function roundFun(numberRound,roundDigit)
{
    
var digit   = Math.pow(10,roundDigit);
    
var numV    = Math.round(numberRound*digit)/digit;
    
var strV    = numV.toString();
    
var strZero = "";
   
    
if(strV.indexOf("."> -1)
    {
        
for(var j=0; j<roundDigit-strV.split(".")[1].length; j++)
        {
            strZero 
+= "0";
        }
    }
    
else
    {
        
//得到小数点后的字符串
        strZero = ".";
        
for(var j=0; j<roundDigit; j++)
        {
            strZero 
+= "0";
        }
    }
    
return strV+strZero;
}

posted @ 2005-04-28 11:25  让心灵去旅行  阅读(580)  评论(0编辑  收藏  举报