使用ngpattern验证自然输入数字

ng-pattern="/0-9/"用来设置price_field不接受decimal

number。但是当我输入自然数(从0到9999999)时,ng-show被激活Not valid number!

我哪里做错了?。请帮忙。

<form name="myform" data-ng-submit="create()">

<input type="number"

name="price_field"

data-ng-model="price"

require

ng-pattern="/0-9/">

<span ng-show="myform.price_field.$error.pattern">Not valid number!</span>

<input type="submit" class="btn">

</form>

回答:

问题是您的REGX模式仅与输入“ 0-9”匹配。

为了满足您的要求(0-9999999),您应该重写regx模式:

ng-pattern="/^[0-9]{1,7}$/"

我的例子:

HTML:

<div ng-app ng-controller="formCtrl">

<form name="myForm" ng-submit="onSubmit()">

<input type="number" ng-model="price" name="price_field"

ng-pattern="/^[0-9]{1,7}$/" required>

<span ng-show="myForm.price_field.$error.pattern">Not a valid number!</span>

<span ng-show="myForm.price_field.$error.required">This field is required!</span>

<input type="submit" value="submit"/>

</form>

</div>

JS:

function formCtrl($scope){

$scope.onSubmit = function(){

alert("form submitted");

}

}

这是一个jsFiddle演示。

以上是 使用ngpattern验证自然输入数字 的全部内容, 来源链接: utcz.com/qa/400150.html

回到顶部