原始问题:(请跳至编辑)
我正在尝试制作我可以点击的图书。
<div ng-app="myApp" ng-controller="myAppCrtl">
<ul ng-repeat="x in browseBooks">
<div id="{{x.bookId}}">
<li>
<a href="" ng-click=logout()><img style="max-width:100px;" ng-src="{{x.img}}"></a>
<p>{{x.name}}</p>
<p>{{x.price}}</p>
<br>
</li>
</div>
</ul>
</div>
根据提供的解决方案here无法正常工作,并且有关angularjs网站的链接已损坏。
我知道函数logout工作正常,就像正在执行的按钮一样。
<a>
标签的问题我无法使图像触发所需的功能。
修改
我理解我的问题是什么,ng-repeat为循环中的每个项创建子范围。因此,尝试访问父作用域中定义的logout()
方法不起作用。 ?
有什么想法吗?即使用"logout()"
替换$parent.logout()
也不起作用......
EDIT2
它正在运作,但是所有更改都是内部范围的本地...
答案 0 :(得分:0)
您需要logout()
附近的引号
然后您可以根据需要使用javascript:void(0)
并且#
不适合您
<a href="javascript:void(0)" ng-click="logout()"><img style="max-width:100px;" ng-src="{{x.img}}"></a>
答案 1 :(得分:0)
你试过了吗?
<li ng-click="logout()">
<a href="#"><img style="max-width:100px;" ng-src="{{x.img}}"></a>
<p>{{x.name}}</p>
<p>{{x.price}}</p>
<br>
</li>