【发布时间】:2017-06-29 16:24:00
【问题描述】:
总结:
我有一个 array of objects 显示在 ng-repeat 列表中。每个对象具有三个属性id、name 和age。 name 字段是可点击的。
要求:
一旦用户点击了name 字段,<a> 标记应从表中删除,以针对已点击的特定记录。
假设我点击了Alpha,那么应该从该字段中删除链接。
问题陈述:
假设用户之前点击了Alpha,现在他将点击Beta。然后Alpha字段的状态再次变为之前的状态(<a>标签已添加)。
一旦<a> 标记被删除,就不应再为该特定字段添加它。
我试过了:
var app = angular.module('myApp', []);
function PeopleCtrl($scope, $http) {
$scope.people = [
{
id: 1,
name: "Alpha",
age: "24"
},
{
id: 2,
name: "Beta",
age: "25"
}
];
$scope.removeLink = function(index) {
$scope.rowIndex = index;
};
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp" ng-controller="PeopleCtrl">
<table>
<tr>
<th>Id</th>
<th>Name</th>
<th>Age</th>
</tr>
<tr ng-repeat="person in people">
<td>{{person.id}}</td>
<td ng-show="rowIndex != $index">
<a href="" ng-click="removeLink($index)">{{person.name}} </a>
</td>
<td ng-show="rowIndex == $index">
{{person.name}}
</td>
<td>{{person.age}}</td>
</tr>
</table>
</div>
【问题讨论】:
标签: javascript angularjs hyperlink angularjs-ng-repeat