myController:
$scope.items = [
{name: 'item 1', description: 'desc001'},
{name: 'item 2', description: 'desc002'},
{name: 'item 3', description: 'desc003'},]
$scope.selectRow = function (index) {
$scope.selectedRow = index;
}CSS:
.select {
background-color: lightgreen;
}HTML 1:
<div ng-controller="myController">
<table>
<tr ng-repeat="item in items" ng-click='selectRow($index)' ng-class="{select:$index == selectedRow}">
<td>{{item.name}}</td>
<td>{{item.description}}</td>
</tr>
</table>HTML 2:
<div ng-controller="myController">
<table>
<tr ng-repeat="item in items" ng-click='selectedRow = $index' ng-class="{select:$index == selectedRow}">
<td>{{item.name}}</td>
<td>{{item.description}}</td>
</tr>
</table>为什么HTML-1可以工作,但HTML-2不能正常工作?它们之间有什么不同?
发布于 2014-03-07 18:07:36
ng-click='selectRow($index)'将调用名为selsectRow()的函数,并将行的索引传递给它。
ng-class="{select:$index == selectedRow}此表达式将根据布尔运算$index == selectedRow的结果更改此指令的类名。
https://stackoverflow.com/questions/21049092
复制相似问题