我用自己的函数来判断是否是小数的
//检查数字,出错后,焦点返回编辑框,非负时不允许等于0
function CheckNum1(ob, enDecimal, enNegative, txtName)
{
var num = ob.value;
if(num == "")
return true;
if(!h_IsNumber( num, enDecimal, enNegative))
{
ob.focus();
alert(txtName+"输入有误!");
return false;
}
return true;
}
//检查数字,num:待检文本,enDecimal:是否允许允许小数,enNegative是否允许负数
function h_IsNumber(num, enDecimal, enNegative)
{
var m_num = new Number(num);
if( isNaN(m_num) )
return false;
if( !enNegative && m_num<=0 )
return false;
if( !enDecimal && (m_num-Math.floor(m_num))!=0 )
return false;
return true;
}在文本框中用onBlur来触发CheckNum1这个函数就行了。如果输入有误光标会强行停留在那个文本框,不要每输入一个字符就去判断