AngularJS提交关于按键的模糊和模糊

前端之家收集整理的这篇文章主要介绍了AngularJS提交关于按键的模糊和模糊前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在输入字段模糊时向服务器提交一些数据.用户还应该能够通过按Enter键来模糊输入字段.

不幸的是,这导致以下结果:$rootScope:inprog: $apply already in progress error.

Plunkr – 提前感谢!

这是发生了什么:

>你按回车键
> ng-keydown触发器(摘要开始)
>你调用target.blur()
> ng-blur触发并尝试启动另一个摘要周期
> Angular抱怨

模糊是同步执行的,并立即触发处理程序而不完成第一个摘要.

在我看来,这不是你的代码的问题,而是一个Angular bug.我一直在努力想出一个更好的解决方案,但我只能找到:

app.controller('BlurCtrl',function($scope,$timeout) {
  $scope.blurModel = "I'm the value"

    $scope.blurOnEnter = function( $event ) {
      if ( $event.keyCode != 13 )
        return

      // this will finish the current digest before triggering the blur
      $timeout(function () { $event.target.blur() },false);
    }

    $scope.onBlur = function() {
    $scope.result = this.blurModel
    }
})

猜你在找的Angularjs相关文章