我有一个使用ng-repeat填充内容的指令。我在内部的每个元素上都有一个ng-click / ng-focus事件,但点击不会触发操作。
当我从模板中删除ng-repeat时,这是有效的。我正在使用angularjs 1.3.4
app.directive('inputTable', [function(){
restrict: 'E',
template: '<div ng-repeat="item in items" >
<div >
<input type="text" ng-focus="focusTap()" ng-model="item.name" placeholder="Name">
</div>
</div>',
replace:true,
scope: {
items:'=items'
},
controller:['$scope', '$element', function($scope, $element ){
$scope.focusTap = function(){
console.log('focus called');
}
}],
link: ['$scope', '$element', 'attributes', function($scope, $element, attributes){
}],
}]
答案 0 :(得分:0)
似乎是一个错误。在 1.3.0-beta.10 中按预期工作,但不是更高版本。
如果使用的是较新版本,请删除replace: true
,然后就可以了。