我想在脚本端获取所选数据的索引位置
<table ng-table="testTable">
<tbody>
<tr ng-repeat="data in $data">
<td data-title="data">
{{data.name}}
< /td>
<td data - title="'Actions'">
<button ng-click="test(data)">Add</button>
</td>
</tr>
</tbody>
</table>
类似的东西
$scope.test = function(data){
var x = data.index;
}
我知道html我能做到这一点
<button ng-click="test(data,$index)">Add</button>
并将$ index传递给脚本端,但我确定还有其他方法。
可以在这里得到一些帮助, 感谢。
答案 0 :(得分:0)
可能是:
<tr ng-repeat="data in $data" ng-init="data.index = $index;">
<td data-title="data">
{{data.name}}
</td>
<td data - title="'Actions'">
<button ng-click="test(data)">Add</button>
</td>
</tr>
编辑:参见工作示例: http://plnkr.co/edit/87PT7pvIKZNe1DyQ8uUu?p=preview
答案 1 :(得分:0)
你必须在ng-repeat
之前初始化<table ng-table="testTable" ng-init="$data.index = {}">
<tbody>
<tr ng-repeat="data in $data">
<td data-title="data">
{{data.name}}
< /td>
<td data - title="'Actions'" ng-init="data.index.id= $index">
<button ng-click="test(data)">Add</button>
</td>
</tr>
</tbody>
</table>
$scope.test = function(data){
var x = data.index.id;
}
答案 2 :(得分:0)
请考虑以下简单示例。
<div ng-app="myApp" ng-controller="MainCtrl">
<ul>
<li ng-repeat="page in pages ">
<a ng-click="test($index)">{{ $index }}</a>
</li>
</ul>