我有一个简单的DOM层次结构,我想获取一组特定的元素(我想要所有canvas元素)。这是此伪指令的整个模板:
<div id='charts-container'>
<div class='chart-wrapper' ng-repeat='chart in getNumberOfCharts() track by $index'>
<canvas id="{{'exam-chart-' + $index}}" class='chart-canvas'></canvas>
</div>
</div>
我想创建一个包含#charts-container元素中所有画布的列表,但我做不到。这是我要在链接函数中执行的操作:
link: function (scope, element, attributes, controller) {
var look = element.find('#chart-canvas');
$log.debug(look);
}
然后我得到了这个元素,但是我不知道如何从这里获取所有图表包装器元素。
我尝试做look.context.children
,它返回了一个空列表,但同时向我展示了我想要的内容,就像列表已填充一样,这是一张图片。如果我尝试访问此列表的任何索引,它将返回未定义的值(这很好,因为它是一个空列表。但是为什么控制台会向我显示这些值?)
实现此目标的最佳方法是什么?要获得此模板中的所有canvas元素?(其中有15个)。谢谢!
- - 更新 - -
我意识到,如果删除模板中使用的ng-repeat属性,则可以正常工作!但是我需要ng-repeat ...
element.find('.chart-canvas')
设法获取canvas元素,但前提是没有ng-repeat属性。
这是使用ng-repeat时的常见问题吗?在这种情况下摔倒时有什么特别的治疗方法吗?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句