0

テキストボックスに整数と浮動小数点数(小数点以下第3位まで)のみを許可したいのですが、JavaScriptを使用してこれを実現するにはどうすればよいですか?

有効な値は次のとおりです

1234
12.3
12.314
1.11
0.4

有効ではありません

1.23456
abcd or any other character 
4

4 に答える 4

2

一致させる必要があるというコメントに基づいて".1"、正規表現の最初の部分に条件を追加する必要があります。

var re = /^(\d+)?(?:\.\d{1,3})?$/;

大まかなテストスイート-jSFiddle

于 2013-03-22T12:25:08.833 に答える
0

これを試して:

var reg=/^[\d]+(?:\.\d{1,3})?$/;
str=10.2305;
str1=123;
alert(reg.test(str));
alert(reg.test(str1));

Fiddle を確認してくださいhttp://jsfiddle.net/8mURL/1

于 2013-03-22T11:58:11.967 に答える
0

正規表現を使用して入力フィールドを検証します。正規表現は次のとおりです。

^[0-9]+(?:\.[0-9]{1,3})?$
于 2013-03-22T11:49:56.900 に答える
0

これを行うには、正規表現を使用できます。

/^\d+(?:\.\d{1,3})?$/

これは、文字列の始まり(^)、1桁以上の数字(\d+)、オプションでa.と1〜3桁の数字((?:\.\d{1,3}))、そして文字列の終わり($)です。

入力の値と比較するには、次のようにします。

var re = /^\d+(?:\.\d{1,3})?$/;
var testValue = document.getElementById('id-of-input').value;
if(re.test(testValue)) {
    // matches - input is valid
}
else {
    // doesn't match - input is invalid
}

このjsFiddleデモをご覧ください。

于 2013-03-22T11:55:11.820 に答える