【问题标题】:Only integer numbers allow print in input只有整数允许在输入中打印
【发布时间】:2017-09-25 15:17:27
【问题描述】:

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

这是我的输入配置:

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

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

【问题讨论】:

    标签: angularjs input kendo-ui


    【解决方案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>

    【讨论】:

    • 感谢您的回答。此解决方案在打印值后检查输入文本,是否可以只打印整数?
    猜你喜欢
    • 2016-03-04
    • 2015-02-26
    • 2016-07-08
    • 1970-01-01
    • 1970-01-01
    • 2018-01-22
    • 1970-01-01
    • 2013-08-05
    • 2018-03-06
    相关资源
    最近更新 更多