0

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/

4

1 に答える 1

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
于 2012-06-11T02:42:38.290 に答える