JQuery マスク入力プラグインを使用しています。
$("#percent").mask("99.99?9");
これにより、次のような数値が可能になります10.999, 10.99, 01.999, 01.99
私が達成したいのは、ユーザーに入力させたくないということです01.99
。代わりに、以前に1.99
必要なユーザータイプが自動的に追加される場合。これは私が始めた方法ですが、続行する方法がわかりません:0
1
//assume i typed in field 11.99
$(document).on('keyup', '#percent', function(evt) {
var input = $(this).val();
alert(input); // 11.99_
if(evt.which == '190' || evt.which == '110') {
//if dot is clicked
alert(parseInt(input)); // 11
}
});
3 番目の値はオプションであり、入力しなかったため、アラートの入力11.99_
は最後にアンダースコアが表示されることに注意してください。
現在、この値は完全に正常ですが、ユーザーが を入力1.99
すると、自動的に移動9
して数字で1
埋められるため、 が返され、上で定義したように小数が存在する必要があるため、これは無効です。したがって、私の if ステートメントでは、入力されたものが より小さいかどうかを検出できるようにしたいと考えています。小数点以下の場合は、最初に追加します。2
19.9
2
10
10
0
OK の修正を見つけましたunderscore _
:
$("#percent").mask("99.99?9", {placeholder: ""})
1.99
しかし、まだ入力に関する他の問題は修正されていません19.9