使用ng-repeat对象值作为javascript参数

时间:2016-12-26 07:16:33

标签: javascript angularjs

我的代码看起来像这样:

<tr ng-repeat="obj in objs">
  <td onClick = "someFunction({{obj.val1}})">{{obj.val2}}</td>
  <td>{{obj.val3}}</td>
</tr>

colums正确显示val2和val3,但我试图定义的onclick方法不起作用,因为代码没有从{{obj.val1}}转换为正确的值,它保持原样。

如何正确地将{{obj.val1}}发送到onClick事件?可以这样做吗?

4 个答案:

答案 0 :(得分:2)

使用ng-click代替onClick,并将someFunction()功能分配给有角度的$scope

答案 1 :(得分:0)

在angular中,他们已经有一个名为ng-click的指令 ngClick指令允许您在单击元素时指定自定义行为。用于单击事件。而且您不需要绑定参数{{}}

然后您的代码就像

<tr ng-repeat="obj in objs">
  <td ng-click = "someFunction(obj.val1)">{{obj.val2}}</td>
  <td>{{obj.val3}}</td>
</tr>

答案 2 :(得分:0)

是的,可以这样做。使用ng-click

    <tr ng-repeat="obj in objs">
    <td ng-click = "someFunction(obj.val1)">{{obj.val2}}</td>
    <td>{{obj.val3}}</td>
    </tr>

您不需要使用{{}}绑定值,您只需将它们作为函数参数即可。

答案 3 :(得分:-2)

这样做:

<td onClick = "someFunction(obj.val1)">{{obj.val2}}</td>