AngularJs ng-click event only triggered with liter

2019-03-25 17:21发布

问题:

When I call within a ng-repeat group

<span ng-click="remove({{user.id}})">Delete</span>

the remove function is not called

but when I replace the expression by a literal argument it gets called (works properly):

<span ng-click="remove(123)">Delete</span>

The '{{user.id}}' expression is evaluated properly and has only integer values.

Anybody an idea what is going on? Same happens with anchor tags (with href="").

回答1:

ng-click="remove(user.id)" should work, ng-click evaluate it content so you don't need interpolation



回答2:

You shouldn't use curly braces in the ng-click expressions. Try this instead:

<span ng-click="remove(user.id)">Delete</span>

And be sure to check the AngularJS expressions documentation: http://docs.angularjs.org/guide/expression