1. ホーム
  2. jquery

[解決済み】 jQuery:テキストボックスの入力を「数字」だけに制限する最良の方法は何ですか?(小数点を許可する)。

2022-04-20 01:26:59

質問

テキストボックスの入力を数字のみに制限したいのですが、どのような方法がありますか?

小数点以下を許容するものを探しています。

たくさんの例を見ます。しかし、どれを使うかまだ決めていません。

Praveen Jeganathanからのアップデート

プラグインは不要になり、jQueryが独自に実装した jQuery.isNumeric() をv1.7で追加しました。 参照してください。 https://stackoverflow.com/a/20186188/66767

解決方法は?

更新情報

これに対する新しい、非常にシンプルな解決策があります。

を使用することができるようになります。 任意の のような入力フィルタが必要です。 <input> , 様々な数値フィルタを含む。これは、以下のことを正しく処理します。 Copy+Paste、Drag+Drop、キーボードショートカット、コンテキストメニュー操作。 入力不可能なキー、およびすべてのキーボードレイアウト。

参照 この回答 またはご自身でお試しください。 JSFiddleで .

jquery.numeric プラグイン

を使ったフォームを多数実装することに成功しました。 jquery.numeric プラグインを使用しています。

$(document).ready(function(){
    $(".numeric").numeric();
});

さらに、これはtextareasでも動作します。

ただし、Ctrl+A、Copy+Paste(コンテキストメニュー経由)、Drag+Dropは、以下のようになります。 ではない は期待通りに動作します。

HTML 5

HTML5規格のサポート拡大により pattern 属性と number の型は input 要素で数値のみの入力を制限することができます。一部のブラウザ(特にGoogle Chrome)では、数字以外の内容の貼り付けを制限することもできます。詳しくは number およびその他の新しい入力タイプは こちら .