只有整数才允许在输入中打印

时间:2017-09-25 15:17:28

标签: angularjs input kendo-ui

我使用的是AngularJS和Kendo UI。我想在输入组件中只打印整数。我试过使用正则表达式,但它没有帮助我。

这是我的输入配置:

input(
    ng-pattern='vm.regexp'
    min='1'
    ng-model='vm.maxContentCounter'
)
vm.regexp = /^(0|[1-9]\d*)$/;

此输入允许打印逗号和点,我可以打印小于1的值。我怎么能只允许打印整数值?

1 个答案:

答案 0 :(得分:1)



<html ng-app="myApp">
<head>
	<title></title>
</head>
<body ng-controller="myCtrl">
<input type="text" valid-decimal-number ng-model="Amount"  ng-blur="ConvertToDecimal()">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script type="text/javascript">
var app = angular.module("myApp", []);
app.controller('myCtrl', ['$scope', function ($scope) {
$scope.ConvertToDecimal = function (val) {
	if(isNaN($scope.Amount)){
		alert("given input is not a number");
		return;
	}
        var num = Number($scope.Amount);
        var dupNum=Math.floor(num);
        if(num !=dupNum){
        alert("given input is not a number");
		return;
        }
        $scope.Amount=num;
    }
}]);
</script>
</body>
</html>
&#13;
&#13;
&#13;