Подтвердить что ты не робот

Ng-pattern только для чисел будет принимать символы типа '-' в angular.js

чтобы текст ввода принимал только числа от 0 до 9.

это мой шаблон:

$scope.onlyNumbers = /[\u0030-\u0039]+/g;

по какой-то причине, символы, такие как "-", будут приняты, хотя это не указано в диапазоне, который я объявил.

это мой входной html:

  <input style="width:40%;" type="text" name="phone" ng-minlength="10" ng-maxlength="15" ng-model="register.phone" placeholder='cell phone' ng-pattern="onlyNumbers" required title="please enter cell phone">

может кто-нибудь помочь?

4b9b3361

Ответ 2

Вам нужно привязать выражение, чтобы ограничить значение только числами, и я не думаю, что вам нужен глобальный модификатор, чтобы вы стали следующим выражением:

$scope.onlyNumbers = /^[\u0030-\u0039]+$/;

И даже лучшее выражение:

$scope.onlyNumbers = /^[0-9]+$/;

Ответ 3

Попробуйте это для более чем 0 номеров: $scope.onlyNumbers = /^[1-9]+[0-9]*$/
Для любых чисел: $scope.onlyNumbers =/^ [0-9] + $/'

Ответ 4

Вам нужно отредактировать шаблон regx

$scope.onlyNumbers =/^ [0-9] {1,7} $/;