如何只允许Angular中的整数?

时间:2016-03-15 11:04:55

标签: angularjs validation input numbers integer

我的HTML中有一个数字输入,我希望它是一个整数,而不是浮点数。

所以,如果我有这个:

<input type="number" ng-model="person.age" />

Angular会认为 18.4 的值有效。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:9)

function Main($scope) {

     $scope.regex = "/^-?[0-9][^\.]*$/";
   }
input.ng-dirty.ng-invalid { color: red }
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app>
    <div ng-controller="Main">
        <form name="form">
	  <input type="number" ng-model="person.age" ng-pattern="/^-?[0-9][^\.]*$/"/>
           <input type="number" ng-model="person.age1" ng-pattern="{{regex}}" />
        </form>
    </div>
</div>

试试这个

 $scope.regex = "/^-?[0-9][^\.]*$/";

<input type="number" ng-model="person.age" ng-pattern="{{regex}}"/>

答案 1 :(得分:2)

您也可以使用此ng-pattern="/^(0|\-?[1-9][0-9]*)$/"