AngularJS ng-click 事件未在 ng-repeat 中触发 [英] AngularJS ng-click event not firing within ng-repeat
问题描述
我有一个从 JSON 对象构建的标签列表...
<span ng-click="search = { tag: comedian.tag }">{{ comedian.tag }}</span>
以及从同一对象构建的图像列表...
<div ng-repeat="comedian in comedians.details | orderBy: 'name' | filter:search:strict"><img width="50" src="{{ comedian.image }}" alt="{{ comedian.name }}">
两个列表都按预期构建.但是点击事件不会触发来过滤图像.如果我手动构建如下所示的标签列表,则单击事件有效...
<span ng-click="search = { tag: 'Character'}">Character</span><span ng-click="search = { tag: 'Sitcom'}">Sitcom</span>
但是在 ng-repeat 里面他们没有.如果您需要任何其他详细信息,请告诉我!谢谢
就像@Cherniv 在第一条评论中建议的那样:使用 $parent.search
以便分配到父作用域.
我主要将其添加为答案,以便可以接受,因为这个问题乍一看似乎没有答案,但实际上已经解决了.
I have a list of tags built from a JSON object...
<div ng-repeat="comedian in comedians.details | orderBy: 'tag' | unique: 'tag'">
<span ng-click="search = { tag: comedian.tag }">{{ comedian.tag }}</span>
</div>
And a list of images built from the same object...
<div ng-repeat="comedian in comedians.details | orderBy: 'name' | filter:search:strict">
<img width="50" src="{{ comedian.image }}" alt="{{ comedian.name }}">
</div>
Both lists build as expected. But the click event is not firing to filter the images. If I manually build the list of tags like below the click event works...
<span ng-click="search = { tag: 'Character'}">Character</span>
<span ng-click="search = { tag: 'Sitcom'}">Sitcom</span>
But inside the ng-repeat they do not. Let me know if you need any other details! Thanks
Like @Cherniv suggested in the first comment: use $parent.search
so assing to the parent scope.
I'm mostly adding this as an answer so it can be accepted, since this question looks pretty unanswered at first sight, while it's actually solved.
这篇关于AngularJS ng-click 事件未在 ng-repeat 中触发的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!