Angularjs `ng模式`-如何只检查数字?
我正在使用Angularjs `ng模式`-如何只检查数字?,angularjs,angularjs-forms,Angularjs,Angularjs Forms,我正在使用ng模式检查输入中是否只有数字。但对我来说,这是行不通的。我可以在数字之后键入字符。我怎样才能限制它 这是我的密码: <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
ng模式
检查输入中是否只有数字。但对我来说,这是行不通的。我可以在数字
之后键入字符
。我怎样才能限制它
这是我的密码:
<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>
不是一个有效的数字!
使用此表达式
ng-pattern="/^[0-9]*$/"
更新:
对于只接受字符,可以这样使用
ng-pattern="/^[a-zA-Z]*$/"
试试这个正则表达式:它应该可以工作
/^[0-9]+$/
+符号用于接受一个或多个数字。ng pattern=“/^[0-9]*$/”
//更改为
ng-pattern="/^\d{1,10}$/"
注意:“\d”不仅可以检查0-9,还可以检查许多数字,如反应形式的希腊数字
this.form = fb.group({
number: ['', [Validators.required, Validators.pattern("^[0-9]*$")]]
})
对于只接受文本框中的数字,我认为您最好在输入标记中使用type=“number”。您可以参考以下线程:Ok。对于接受字符,我可以使用
ng pattern=“/^[a-z][a-z]*$/”
-?具体要求是什么?只需要允许字符(名称字段)它不适用于angularjs 1.2.x,它还允许字符为什么要更改它?这种方法的好处是什么?