RobinHerbots inputmask を使用していますが、22.30
や2.15
のように小数点以下2桁にするにはどうすればよいですか?入力マスクで設定された 'currency'と同様ですが、コンマ(値の長さに基づいて自動生成)と通貨記号はありません。以下は私が試したもののスニペットですが、残念ながらどれも機能しません。ヘルプ、提案、アイデア、手掛かり、推奨事項を教えてください。
$(document).ready(function(){
$(".decimal").inputmask('decimal',{rightAlign: true});
$(".currency").inputmask('currency',{rightAlign: true });
$(".custom1").inputmask({ mask: "**[.**]", greedy: false, definitions: { '*': { validator: "[0-9]" } }, rightAlign : true });
$(".custom2").inputmask({ 'alias' : 'decimal', rightAlign: true, 'groupSeparator': '.','autoGroup': true });
$(".custom3").inputmask({ 'alias' : 'decimal', 'mask' : "**[.**]", rightAlign: true});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.2.6/jquery.inputmask.bundle.min.js"></script>
<input type="text" class="decimal" /><br>
<input type="text" class="currency" /><br>
<input type="text" class="custom1" /><br>
<input type="text" class="custom2" /><br>
<input type="text" class="custom3" value="0" /><br>
JQueryやライブラリを使用せずに、簡単で非常に効率的な方法を思いついたばかりです。
HTML:
<input type="number" oninput="inputChange()" />
JavaScript:
function inputChange(){
let value = Number(document.activeElement.value);
let pos = document.activeElement.selectionStart;
document.activeElement.value = value.toFixed(2);
document.activeElement.selectionStart = pos;
document.activeElement.selectionEnd = pos;
}
私はそれをウェストコーストのスチームローラーと呼んでいます