要件:
入力フィールドを数字のみ、または最大 2 つの 10 進数のみにキー入力するように制限しようとしています。ユーザーが小数点以下 2 桁を超えて入力する場合、入力フィールドには小数点以下 2 桁までの数値のみを表示し、その他はすべて削除する必要があります。正規表現を使用しています。
問題:
入力フィールドに小数点以下 2 桁以上が入力された場合、すべての小数点以下の桁が削除されて表示されます。問題は正規表現にあります。
正しい正規表現の作成を手伝ってください。
コード:
$(document).ready(function() {
$("#AmountField").bind("keyup change", function() {
var value = $(this).val();
var numericReg = /^d+(?:\.\d{0,2})?$/ ;
if( !numericReg.test(value) )
{
value = value.replace(/(?=\d*\.?)(\d{3})/g,"");
$(this).val(value);
}
});
});