如何防止插入值大于用户在文本字段中输入的数字

时间:2016-11-30 11:40:32

标签: javascript html angularjs meteor

我有一个名为premium的文本字段,用户可以输入最多10位数字。点击提交后,另一个名为deposit的文本字段打开,最多可以输入7位数字。但是我想给出一个条件,其中用户无法输入超过保费的存款.. 例如:

If premium=111 Deposit should be <=111

如果存款超过溢价,则应将价值更改为溢价,即为111

有人可以帮助我吗? 谢谢。 Jsfiddle for above:https://jsfiddle.net/U3pVM/28556/

4 个答案:

答案 0 :(得分:0)

如果您觉得有帮助,请检查一下并提升

https://jsfiddle.net/U3pVM/28558/

             function TodoCtrl($scope) {

                $scope.hide=false;
                $scope.submit = function() {
                   $scope.hide=true;
                   if($scope.deposit && parseInt($scope.deposit)>parseInt($scope.premium)){

                     $scope.deposit = $scope.premium;
                  }
               };

             }

答案 1 :(得分:0)

您可以添加以下代码作为存放输入字段的属性的tyr。并将id“preminum”赋予高级输入字段。

onkeypress="return Number(this.value()+""+event.key) <= Number($('#premium').value());"

这不允许用户输入超过保费的价值。

答案 2 :(得分:0)

添加此代码:

$scope.$watch('deposit', function(newVal, oldVal){     
    if(newVal && newVal*1 > $scope.premium*1)
        $scope.deposit = $scope.premium;    
})

答案 3 :(得分:0)

Html5支持数字输入的最小值和最大值。例如: <input type="number" name="deposit" min="1" max="111"> 无论如何,最好检查服务器端的所有用户输入。