ng-keypress不触发功能

时间:2014-07-26 12:57:35

标签: angularjs keypress

我是AngularJS的新手。我在AngularJS中实现了ng-keypress事件。 我提到了许多博客并尝试按照显示的方式进行操作,但我的代码无效!

    <div ng-app="myApp">
        <div ng-controller="MainCtrl">
            <input  ng-keypress="change($event)" type="text" >
            {{ text }}
        </div>
    </div>

脚本是:

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

    myApp.controller('MainCtrl', ['$scope', function ($scope) {
        $scope.change=function($event){
            $scope.text= 'a';
        };
    }]);

我试图在按键上更改{{text}}的值但是它无法正常工作! 任何人都可以帮助我!

谢谢:)

3 个答案:

答案 0 :(得分:5)

我尝试了同样的事情及其工作

  <body ng-controller="MainCtrl">
    <input  ng-keypress="change($event)" type="text" >
    <pre>{{name}}</pre>
  </body>


app.controller('MainCtrl', function($scope) {
  $scope.name = 'World';
  $scope.change=function($event){
    $scope.name= 'hello';
    };
});

结帐这个plunker ... PLUNKER LINK

修改 结帐your code plunker ..那也有效

修改

最后答案是:1.0.7不支持ng-keypress,因此无法正常工作..

答案 1 :(得分:4)

有时ng-keypress在某些浏览器上不起作用!! 我有铬的箭头键的问题 试试ng-keydown(它对我有用)

答案 2 :(得分:1)

正如其他人所说的那样,它应该按照预期的方式工作。也许你想要这样的东西?

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

myApp.controller('MainCtrl', ['$scope', function ($scope) {
  $scope.text = '';
  $scope.change=function($event){
    $scope.text += String.fromCharCode($event.keyCode);
  };
}]);