0
私のような入力と一致する正規表現が必要です、.
浮動小数点値の入力を制限する方法は?
hereの右側に.
と最大3
の左側に最大4
桁です 1234.789
12
123.02
は私が持っているものです試しました。
i = 0;
$(document).ready(function(e){
$("input").keypress(function(e){
var patt = new RegExp("^[0-9]{1,4}(?:\.[0-9]{0,3})?$");
var val = this.value + e.key;
debugger;
if (!patt.test(val)){
\t e.preventDefault();
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Enter your name: <input type="number">
ダブルコンストラクタ記法で特殊文字をエスケープします。 [なぜ正規表現のコンストラクタを二重にエスケープする必要があるのか?](http://stackoverflow.com/questions/17863066/why-do-regex-constructors-need-to-be-double-escaped)しかし、正規表現のリテラル: 'var patt =/^ \ d {1,4}(?:\。\ d {0,3})?$ /;' –
試したコードに問題はありますか?はいの場合、それは何ですか? –
正規表現は正常に動作していますが、問題は値を制限しようとしていることです。 'e.preventDefault();'を実行しても、 "元に戻す" –