/**
* 取得字符串的字节长度
*/
function strlen(str)
{
var i;
var len;
len = 0;
for (i=0;i<str.length;i++)
{
if (str.charCodeAt(i)>255) len+=2; else len++;
}
return len;
}
/*
* 判断是否为数字,是则返回true,否则返回false
*/
function f_check_number(obj)
{
if (/^\d+$/.test(obj.value))
{
return true;
}
else
{
f_alert(obj,"请输入数字");
return false;
}
}
/*
* 判断是否为自然数,是则返回true,否则返回false
*/
function f_check_naturalnumber(obj)
{
var s = obj.value;
if (/^[0-9]+$/.test( s ) && (s > 0))
{
return true;
}
else
{
f_alert(obj,"请输入自然数");
return false;
}
}
/*
* 判断是否为整数,是则返回true,否则返回false
*/
function f_check_integer(obj)
{
if (/^(\+|-)?\d+$/.test( obj.value ))
{
return true;
}
else
{
f_alert(obj,"请输入整数");
return false;
}
}
/*
* 判断是否为实数,是则返回true,否则返回false
*/
function f_check_float(obj)
{
if (/^(\+|-)?\d+($|\.\d+$)/.test( obj.value ))
{
return true;
}
else
{
f_alert(obj,"请输入实数");
return false;
}
}
/*
* 校验数字的长度和精度
*/
function f_check_double(obj){
var numReg;
var value = obj.value;
var strValueTemp, strInt, strDec;
var dtype = obj.eos_datatype;
var pos_dtype = dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")")).split(",");
var len = pos_dtype[0], prec = pos_dtype[1];
try
{
numReg =https://www.jb51.net/[\-]/;
strValueTemp = value.replace(numReg, "");
numReg =https://www.jb51.net/[\+]/;
strValueTemp = strValueTemp.replace(numReg, "");
//整数
if(prec==0){
numReg =https://www.jb51.net/[\.]/;
if(numReg.test(value) == true){
f_alert(obj, "输入必须为整数类型");
return false;
}
}
if(strValueTemp.indexOf(".") < 0 ){
if(strValueTemp.length >( len - prec)){
f_alert(obj, "整数位不能超过"+ (len - prec) +"位");
return false;
}
}else{
strInt = strValueTemp.substr( 0, strValueTemp.indexOf(".") );
if(strInt.length >( len - prec)){
f_alert(obj, "整数位不能超过"+ (len - prec) +"位");
return false;
}
strDec = strValueTemp.substr( (strValueTemp.indexOf(".")+1), strValueTemp.length );
if(strDec.length > prec){
f_alert(obj, "小数位不能超过"+ prec +"位");
return false;
}
}
return true;
}catch(e){
alert("in f_check_double = " + e);
return false;
}
}
/*
* 校验数字的最小最大值
* 返回bool
*/