检查用户在18和108之间写入

时间:2015-01-31 11:01:17

标签: angularjs

我正在尝试控制器用户在18到108之间写入,我的意思是用户不能低于18和更高的108。 这是小提琴:Demo

$scope.check = function(){
        var userInput = 18>108;
        if(!userInput){
            alert('wrong');
        }        
    }

1 个答案:

答案 0 :(得分:2)

在check函数中,您可以解析check1范围变量的值,并比较它是否在指定范围内。

app.controller("mainCtrl", function($scope) {
    $scope.check1 = '';
    $scope.check = function() {
        var userInput = parseInt($scope.check1);
        if (isNaN(userInput) || userInput < 18 || userInput > 108) {
            alert('wrong');
        }        
    }
});

此外,您可能希望在用户从输入字段中进行聚焦时执行此检查,因为您现在已经订阅了更改事件,这种情况非常烦人,因为每次用户在输入字段中键入字符时您的警报都会被打破在他的脸上:

<input type="text" ng-model="check1" name="number" ng-blur="check()" />

这是updated fiddle