使用 ng-click 在函数中传递对象

Pass object in function with ng-click

我有这样开头的模板:

<li class="list-group-item" ng-repeat="question in question.ChildQuestions" collapse-toggler ng-click="collapseQuestion(this);"> ...

collapseQuestion 中,我想传递将被引用到单击的对象 li,但是当我像 collapseQuestion(this); 一样发送它时,我得到了一些 Object 但看起来就像它不是 li(我无法获得该对象的任何 class 来检查它究竟是什么)。

那么在 ng-click 中传递对象的正确方法是什么?

您需要解析事件本身。

ng-click="collapseQuestion($event);"

然后在函数中使用$event.currentTarget

function collapseQuestion($event) {
    $event.currentTarget //do something with currentTarget
}

这个post可能有用:get original element from ng-click

ng-click="collapseQuestion(question)"

How I pass an object as a parameter in a ng-click within a ng-repeat? AngularJS