0

我正在使用ng-pattern

 <input type="text" ng-model="price" name="price_field" ng-pattern-restrict="/^[4]*$/" required only-digits>

请让我知道该怎么做,它不接受除 4 以外的任何其他数字。我正在使用仅数字的指令。

4

3 回答 3

0

编辑:抱歉,错误的角度版本 - 但如果你可以将它转换为 angularjs,它会起作用!

您可以(input)在 HTML 输入元素中使用事件

<input type="number" (input)="check($event)">

比在你的 ts 你 cehck 输入的价值

  check(event) {
    console.log(event);
    if (+event.data !== 4) {
      event.target.value = '';
    }
  }
于 2019-12-06T09:12:03.497 回答
0

您提到的模式不是有效的正则表达式模式。而不是尝试使用这个/^([4]){1}?$/希望你会得到它。

 <input type="text" ng-model="price" name="price_field" ng-pattern-restrict="/^([4]){1}?$/" required only-digits>
于 2019-12-06T09:19:53.600 回答
0

尝试使用以下限制模式:

<input type="text" ng-model="price" name="price_field" ng-pattern-restrict="^[4]{1}?$" required only-digits>

并在验证消息下方:

<div ng-messages="myForm.price_field.$error">
    <span ng-message="pattern">Not a valid number!</span>
</div>
于 2019-12-06T09:31:30.550 回答