我有一个文本输入,会收到ID。我想只允许整数。
以下代码不允许使用特殊字符,但允许使用float / decimals:
<input type="number" class="form-control input-sm ng-touched ng-dirty ng-valid ng-valid-number" name="idCliente" id="idCliente" placeholder="ID Cliente" ng-model="vm.idCliente" ng-pattern="/^[0-9]*$/" ng-class="{'error': panelControl.idCliente.$error.pattern}">
什么是限制客户端小数的最快方法?
答案 0 :(得分:1)
您需要添加将在keyup事件上触发的函数,并根据此操作num % 1 != 0
的结果返回true或false。然后,您可以通过向输入添加错误类和/或将模型值更改回null
来显示警告
的 P.S。强>
使用正则表达式来实现这样的微不足道的目的,从性能的角度来看,这不是一个好主意。
答案 1 :(得分:0)
使用此正则表达式[0-9]+(\.[0-9][0-9]?)?
仅允许ng-pattern
演示
angular.module("app",[])
.controller("ctrl",function($scope){
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="ctrl">
<input type="number" class="form-control input-sm ng-touched ng-dirty ng-valid ng-valid-number" name="idCliente" id="idCliente" placeholder="ID Cliente" ng-model="vm.idCliente" ng-pattern="/[0-9]+(\.[0-9][0-9]?)?/" >
</div>