我正在开发我的第一个AngularJS应用程序,并遇到了这个问题与jQuery查找功能。基本上我试图做的是我有一个自定义的HTML组件。它包含使用ng-repeat指令的按钮列表。每个都有它自己的ng-click监听器,在它的回调函数中,我想查找所有的app-item元素,但是很遗憾,它只能返回第一个元素。AngularJS ng-repeat jQuery查找返回只有一个元素
我认为这种情况我应该使用链接,但我不能自己来。 APP-screen.html的
部分:
<div>
<div ng-repeat="error in _errorData.errors">
<button class="app-item" ng-click="_onApplicationContainerClick($event)">
<div class="col-xs-4">
{{error.date}}
</div>
<div class="col-xs-4">
{{error.errorID}}
</div>
<div class="col-xs-3">
{{error.message}}
</div>
<div class="col-xs-1">
<span class="glyphicon glyphicon-collapse-down"></span>
</div>
</button>
</div>
</div>
AppScreen指令:
angular.module('ErrorViewer').directive('appScreen', function() {
return {
restrict: 'E',
templateUrl: 'src/view/scene/app-screen.html',
controller: 'AppScreenController'
};
});
AppScreenController的部分:
$scope._onApplicationContainerClick = function (e) {
// some executions
_collapseErrorData();
};
var _collapseErrorData = function() {
var elems = $element.find('.app-item');
// Should return array of ng-repeated elements!
}
并$元素来自何处而来?你试过angular.element.find('。app-item')吗? – maurycy
它只是控制器的一部分,它来自控制器声明: 'angular.module('Smth').controller('AppScreenController',['$ document','$ scope','$ element', function ($ document,$ scope,$ element){' – MyFantasy512
ok,那么这个注入的'$ element'是什么?它是jQuery,jQuery lit还是angular.element? – maurycy