在ng-repeat内的ng-click函数中添加参数似乎不起作用 [英] Adding parameter to ng-click function inside ng-repeat doesn't seem to work
问题描述
我有一个与ng-repeat
的简单循环,如下所示:
I have a simple loop with ng-repeat
like this:
<li ng-repeat='task in tasks'>
<p> {{task.name}}
<button ng-click="removeTask({{task.id}})">remove</button>
</li>
控制器$scope.removeTask(taskID)
中有一个功能.
据我所知,Angular将首先渲染视图并用数字替换插值的{{task.id}}
,然后在单击事件时将评估ng-click
字符串.
As far as I know Angular will first render the view and replace interpolated {{task.id}}
with a number, and then, on click event, will evaluate ng-click
string.
在这种情况下,ng-click
完全可以得到预期的结果,即:ng-click="removeTask(5)".
但是...它什么也没做.
In this case ng-click
gets totally what is expected, ie: ng-click="removeTask(5)".
However... it's not doing anything.
当然,我可以编写代码从$tasks
数组甚至DOM中获取task.id
,但这似乎不是Angular方式.
Of course I can write a code to get task.id
from the $tasks
array or even the DOM, but this does not seem like the Angular way.
那么,如何在ng-repeat
循环内将动态内容添加到ng-click
指令中?
So, how can one add dynamic content to ng-click
directive inside a ng-repeat
loop?
推荐答案
代替
<button ng-click="removeTask({{task.id}})">remove</button>
执行以下操作:
<button ng-click="removeTask(task.id)">remove</button>
请看这个小提琴:
http://jsfiddle.net/JSWorld/Hp4W7/34/
这篇关于在ng-repeat内的ng-click函数中添加参数似乎不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!