javascript - Angular - 将焦点放在动态创建的输入字段上

标签 javascript angularjs

如何将焦点添加到新创建的字段? 请参阅到目前为止的示例:http://jsfiddle.net/aERwc/165/

$scope.addField = function() {console.log('hi');
    $scope.fields[$scope.keyToAdd] = $scope.valueToAdd;
    $scope.setFieldKeys();
    $scope.keyToAdd = '';
    $scope.valueToAdd = '';
}

最佳答案

您可以使用这种方法,但它需要向您的 ng-repeat 添加动画。见ng-repeat animation complete callback

基本上在回调调用element.focus()

.animation('.repeat-animate', function () {
  return {
    enter: function (element, done) {
      element.hide().show(100, function(){
        var scope = element.scope();
        scope.$evalAsync(function(){ 
          element.find(':last')[0].focus();
        }); 
      });
    }
  };
});

更新代码:http://codepen.io/ev-tt/pen/BNXBmd?editors=101

关于javascript - Angular - 将焦点放在动态创建的输入字段上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32162637/

相关文章:

javascript - Angular.js 默认选择不适用于 ng-model

javascript - 输入类型 = IE11 上的文件

javascript - jquery/javascript if else 语句不起作用,检测到空文本框

javascript - 绕过 javascript 错误以实现优雅降级

javascript - rxjs - 缓冲流直到函数返回 true

angularjs - 如何在注入(inject)前模拟 Angular 模块?

angularjs - 如何让 AngularJS 绑定(bind)到 A 标签的 title 属性?

javascript - react native : How to go about using ShouldComponentUpdate with setInterval and setState

angularjs - 指令名称和属性名称冲突

angularjs - 如何在 Visual Studio Code 中为 Angular.Js 和 Javascript 设置智能感知