javascript - angularjs ngblur不生效 onblur生效,为什么?
淡淡烟草味
淡淡烟草味 2017-06-30 09:57:53
0
2
858
<input class="detail-reply"
        id="replyInput"
        type="text"
        ng-model="$ctrl.replyString">

这个input使用ng-blur是不会触发的,但是直接DOM绑定onblur事件是会触发,为什么?

淡淡烟草味
淡淡烟草味

全部回复(2)
世界只因有你

你用的是1还是2如果是2的话,可以
<input type="text" [(ngModel)]="myModel" (blur)="onBlurMethod()">

export class AppComponent { 
  myModel: any;
  constructor(){
    this.myModel = '123';
  }
  onBlurMethod(){
   alert(this.myModel) 
  }
}
淡淡烟草味

angular1的ng-blur要通过指令才能使用,指令的作用其实就是将ng-blur绑定的事件应用到onblur事件

app.directive('ngBlur', ['$parse', function($parse) {
  return function(scope, element, attr) {
    var fn = $parse(attr['ngBlur']);
    element.bind('blur', function(event) {
      scope.$apply(function() {
        fn(scope, {$event:event});
      });
    });
  }
}]);
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板