Введите отрицательное число в поле ввода и проверьте с помощью ng-pattern-restrict.

У меня проблемы с ng-pattern-restrict У меня есть поле ввода числа с ng-pattern-restrict = "^. {0,13}? $" Но когда я хотел ввести отрицательное число, я попробовал два способа:

ng-pattern-restrict = "^ \ - \ d {0,13}? $": Таким образом, отрицательное число подходит, но оно не позволяет вводить положительные числа, потому что символ в начале должен быть (-)

ng-pattern-restrict = "^ \ d {0,13} (\ - \ d {0,13})? $": этот метод позволяет вводить положительное число, но не позволяет вводить отрицательные числа, потому что для этого требуется число впереди С нетерпением жду, когда кто-нибудь поможет мне другим способом, спасибо и с наилучшими пожеланиями


person Triet Pham    schedule 11.01.2018    source источник


Ответы (1)


angular.module('testApp', ['ngPatternRestrict'])
  .controller('TestCtrl', function(){
    console.log('testing')
  })
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.7/angular.min.js"></script>

<script
src="https://cdn.rawgit.com/AlphaGit/ng-pattern-restrict/cb7ba5dd/src/ng-pattern-restrict.js">
</script>
<div ng-app="testApp" ng-controller="TestCtrl as tc">
  <input type="text" ng-model="tc.data" ng-pattern-restrict="^\-?\d{0,13}?$"/>
  
  {{tc.data}}
</div>

Использовать ? для 0 или 1 совпадения для отрицательного

person shaunhusain    schedule 11.01.2018
comment
Никакая проблема не проходит проверку, если она решает первоначальную проблему и вы не находите с ней никаких ошибок. - person shaunhusain; 11.01.2018