HTML文本框屏蔽或验证

时间:2012-06-11 02:10:03

标签: javascript regex

我的html页面中有文本框,我想接受小数点前后的2位数字。我怎么能用html或javascript做到这一点?

示例值为:

02.50
10.25
00.00

代码:

function inputControl(input,format)
{
    var value=input.val();
    var values=value.split("");
    var update="";
    var transition="";
    if (format=='int'){
        expression=/^([0-9])$/;
        finalExpression=/^([1-9][0-9]*)$/;
    }
    else if (format=='float')
    {
        var expression=/(^\d+$)|(^\d+\.\d+$)|[,\.]/;
        var finalExpression=/^([1-9][0-3]*[,\.]?\d{0,2})$/;
    }   
    for(id in values)
    {           
        if (expression.test(values[id])==true && values[id]!='')
        {
            transition+=''+values[id].replace(',','.');
            if(finalExpression.test(transition)==true)
            {
                update+=''+values[id].replace(',','.');
            }
        }
    }
    input.val(update);
}

http://jsfiddle.net/8Uuvb/39/

1 个答案:

答案 0 :(得分:0)

分割每个数字和小数的运算, 您可以尝试如下:

//1st Make value to string:
value = value.toString();

//2nd Split the digit and decimal:
var values=value.split(".");

//3rd Getting Digit & Decimal in String Form & converting back to integer
var Digit = Number(values[0]);
var Decimal = Number(values[1]);

参考:

  1. 将字符串转换为数字:ClickHERE
  2. 将数字转换为字符串:ClickHERE