如何使用AngularJS的ng-repeat访问json对象中的数组内的对象?
此外,如果您在表格的每一行上复制了一个编辑按钮(使用ng-repeat),如何在单击一个按钮时禁用其他按钮副本?
答案 0 :(得分:1)
禁用其他元素的编辑非常简单。您只需要在父作用域中添加一个标记,表示正在编辑元素:
$scope.editing = false
$scope.toggleEdit = function(){
$scope.editing = !$scope.editing;
}
然后将ng-show
或ng-hide
设为ng-hide="editMode || $parent.editing
。
您可以使用toggleEdit
功能切换编辑模式:
ng-click="editMode = true; toggleEdit()"
要解决第二个问题,您需要引用要访问的数组中的项目。您可以使用Arrays indexOf函数实现此目的:
var index = rows._embedded.alternate.indexOf(shift)
rows._embedded.alternate[ index]._embedded.event.distance
这是您的plunkr,已更新以使用上述内容:http://plnkr.co/edit/ZwHpN5MFpS2c1VFjLckU
答案 1 :(得分:0)
您可能想尝试第二个嵌套循环。比如说,在这个ng-repeat中:
<tr ng-repeat="rows in table._embedded.events">
在rows._embedded.alternate
中对altRows进行另一次ng重复<span ng-repeat="altRows in rows._embedded.alternate">...</span>