输入类型=数字的事件

时间:2019-01-25 15:04:57

标签: angularjs html5-input-number

我对angularjs有点陌生。在用于数字类型输入的chrome中,按向上和向下键箭头增加/减少输入的值。需要禁用它。有什么想法或帮助可以做到吗?

我尝试使用Jquery $(“:input”)。bind('keyup mouseup',function()但ng-model绑定未更新。可能是因为有角度的js无法识别jquery所做的更改。

3 个答案:

答案 0 :(得分:0)

如果您需要永久禁用它,最好用另一种方法做,请使用常规文本输入,但限制其他字符而不是数字。

<input type="text" ng-pattern="/^[0-9]*$/" />

签出ngPattern文档

答案 1 :(得分:0)

您可以使用ng-model伪指令访问控制器中的输入值,并使用ng-disabled伪指令控制输入状态。希望以下演示对您有所帮助:

var app = angular.module('demo', []);

app.controller('DemoCtrl', function($scope) {
  $scope.myNumber = 0;
  $scope.isDisabled = false;
  $scope.toggle = function() {
    $scope.isDisabled = !$scope.isDisabled;
  };
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
<div ng-app="demo">
  <div ng-controller="DemoCtrl">
    <input type="number" ng-model="myNumber" ng-disabled="isDisabled"/>
    <button ng-click="toggle()">Disable/Enable</button>
  </div>
</div>

答案 2 :(得分:0)

模型不会在jquery事件中更改。在angularjs中使用ng-keypress事件