「input type="number"」のテキストボックスを桁数制限且つ半角数値のみ入力可にする方法
「input type="number"」のテキストボックスに対して「2桁まで」等の桁数制限を行いつつ、半角数値のみ入力可に制限したかった。JavaScriptで半角数値のみというのは過去記事でも書いたが、桁数制限は対応したことがなかったと思うので以下に対応方法をメモ。
対応方法
ソースコード
<input type="number" class="number">
<script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script>
$(function() {
$(`.number`).on(`input`, function(){
$(this).val($(this).val().replace(/[^0-9]/g, ''));
$(this).val($(this).val().slice(0, 5));
});
});
</script>
解説等
半角数値以外を入力した場合は空に置換し、sliceで5桁までを返すという形になる。
リファレンス
slice
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
関連記事
-
-
さくらのレンタルサーバでCookieが正常に保存できない場合の対応方法
さくらインターネットのレンタルサーバでjquery.cookie.jsを用いてC ...
-
-
JavaScript / jQueryでブラウザのウィンドウがアクティブかどうかを判別する方法
ある動画サイトを閲覧していた際にウィンドウが非アクティブになると視聴中の動画が止 ...
-
-
HTMLのカスタムデータ属性をjQueryで取得する際はキャッシュに注意する
ASPを使用したサイトでHTMLのカスタムデータ属性を取得し色々処理したかったん ...
-
-
Jcropを使ってブラウザ上で画像を範囲指定して切り抜き(トリミング)
やりたかった事は、画像をアップロードして必要な部分のみを範囲指定してもらい、指定 ...
-
-
jQueryプラグインの作成
面白そうだったのでメモ。 ■参考サイト http://www.entacl.in ...