Angular——把焦点放在动态创建的输入字段上
Angular - Give focus to a dynamically created input field
如何为新创建的字段添加焦点?参见目前的示例: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();
});
});
}
};
});
UPDATED CODEPEN: http://codepen.io/ev-tt/pen/BNXBmd?editors=101
对我来说,这似乎是最简单的方法:
笔代码