javascript - type=number の入力でプラス記号、マイナス記号、および複数の小数点が追加されないようにするにはどうすればよいですか?
给我你的怀抱
给我你的怀抱 2017-05-16 13:37:46
0
6
1409

事前にありがとうございます。ビジネス上の必要により、この入力には数字のみを入力できます。プラス記号とマイナス記号は入力できません。
当初は入力値を判断してプラス記号、マイナス記号、余分なドットを手動で削除したかったのですが、入力値が不正な場合は入力値が空の文字列 '' に変換されていることがわかりました。この方法では、入力の値を取得できません。
ずっと考えているのですが解決策が分かりません、助けてください、ありがとうございます~
ちなみにこのページはvueで書きました~~~

给我你的怀抱
给我你的怀抱

全員に返信(6)
为情所困

正規表現を使用して '^[-]?[0-9]*.?[0-9]+(eE?[0-9]+)?$' と一致させます

リーリー

この方法を使用して、入力値の変化を監視できます。検証が失敗した場合は、プロンプトが表示されます。

リーリー
いいねを押す +0
某草草

JS を投稿して見てください

いいねを押す +0
大家讲道理

onkeyup="this.value=this.value.replace(/D/g,'')" onafterpaste="this.value=this.value.replace(/D/g,'')"

いいねを押す +0
滿天的星座

type=number は、ユーザーが正負の符号、e、および複数の小数点を入力することを直接制限できません。
やはり入力の値によって判断する必要があります。
入力値が不正で空文字列に変換されてしまう問題については、
入力の種類をテキストに変更し、正規表現や置換を使用して数字以外や複数の小数点を削除することができます。

いいねを押す +0
淡淡烟草味

その後、v-model を使用して値をバインドし、watch を通じて値を監視できます。ただし、不正な値が見つかった場合は、不正な文字列を削除するだけです

いいねを押す +0
phpcn_u1582

<input type="tel" />

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート