HTML テキスト入力を数値のみを受け入れるように制限するにはどうすればよいですか?
Dec 15, 2024 pm 01:52 PMHTML テキスト入力で数値入力のみを許可する
概要
HTML テキスト入力でユーザーはテキストを入力することはできますが、入力を数値のみに制限したい場合はどうすればよいでしょうか?これは、アカウント番号や PIN などのデータを収集するのに役立ちます。
JavaScript ソリューション
これを実現する 1 つの方法は、JavaScript を使用することです。数値以外の文字をフィルタリングして除外する JavaScript 関数を次に示します。
function setInputFilter(textbox, inputFilter, errMsg) { [ "input", "keydown", "keyup", "mousedown", "mouseup", "select", "contextmenu", "drop", "focusout", ].forEach(function (event) { textbox.addEventListener(event, function (e) { if (inputFilter(this.value)) { // Accepted value if ([ "keydown", "mousedown", "focusout", ].indexOf(e.type) >= 0) { this.classList.remove("input-error"); this.setCustomValidity(""); } this.oldValue = this.value; this.oldSelectionStart = this.selectionStart; this.oldSelectionEnd = this.selectionEnd; } else if (this.hasOwnProperty("oldValue")) { // Rejected value: restore the previous one this.classList.add("input-error"); this.setCustomValidity(errMsg); this.reportValidity(); this.value = this.oldValue; this.setSelectionRange(this.oldSelectionStart, this.oldSelectionEnd); } else { // Rejected value: nothing to restore this.value = ""; } }); }); }
ログイン後にコピー
ソリューションの使用
この関数を使用するには、関数を setInputFilter に渡すことができます。入力が数値かどうかを確認します:
setInputFilter(document.getElementById("numericInput"), function (value) { return /^\d*\.?\d*$/.test(value); // Allow digits and '.' only }, "Only numbers and '.' allowed");
ログイン後にコピー
これにより、 numericInput テキスト入力フィールドは、数字 (および小数点) のみを受け入れます。
注
次の場合は、入力エラー CSS クラスを適用して入力フィールドをスタイル設定することを忘れないでください。無効な値が入力されました。
以上がHTML テキスト入力を数値のみを受け入れるように制限するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

人気の記事
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7279
9


Java チュートリアル
1622
14


CakePHP チュートリアル
1340
46


Laravel チュートリアル
1257
25


PHP チュートリアル
1205
29

