0

正規表現 /^[0-9]+$/ を使用して、テキスト ボックスの入力を数字のみを受け入れるように制限しています。正常に動作していますが、+124 のようなタイプの場合、テキスト ボックスが無効に設定されていません。

<form name="myForm" novalidate>
  <input type="number" ng-model="age" name="age" ng-pattern="/^[0-9]+$/" />
  <h3>Valid Status : {{myForm.age.$valid}}</h3>
</form>

入力: 123 出力: myForm.age.$valid - true

入力: -123 出力: myForm.age.$valid - false

入力: +123 出力: myForm.age.$valid - true (true であってはなりません)

https://plnkr.co/edit/3OVE6qiWgJozUb3hyFQ5?p=preview

4

2 に答える 2

-1

あなたはただ使うことができます:

ng-pattern="/^[0-9]+$/"

入力タイプを数値に設定しないと(デフォルトではテキストであり、正常に動作するはずです)。

ここで JSFiddle: https://jsfiddle.net/3ju3b2tu/1/

于 2016-07-28T11:15:57.450 に答える