`ng-pattern` - 如何只检查数字?

时间:2015-12-23 06:21:53

标签: angularjs angularjs-forms

我正在使用ng-pattern检查输入中的唯一数字。但对我而言,这不起作用。我可以在characters之后输入number。我该如何限制?

这是我的代码:

<div ng-app ng-controller="formCtrl">
<form name="myForm" ng-submit="onSubmit()">
    <input type="text" ng-model="price" name="price_field" ng-pattern="/^[0-9]/" required>
    <span ng-show="myForm.price_field.$error.pattern">Not a valid number!</span>
    <input type="submit" value="submit"/>
</form>
</div>

Live Demo

4 个答案:

答案 0 :(得分:29)

使用此表达式

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

更新:

接受唯一的字符,你可以像这样使用。

ng-pattern="/^[a-zA-Z]*$/"

答案 1 :(得分:6)

试试这个正则表达式:它应该有效/^[0-9]+$/ +符号用于接受一个或多个数字。

答案 2 :(得分:4)

ng-pattern="/^[0-9]*$/" //改为

ng-pattern="/^\d{1,10}$/"

注意:&#39; \ d&#39;不仅可以检查0-9,也可以检查许多数字,如希腊数字

答案 3 :(得分:0)

对于反应式

this.form = fb.group({

  number: ['', [Validators.required, Validators.pattern("^[0-9]*$")]]

})