1 回答
TA贡献1780条经验 获得超1个赞
这里的问题是你有一个值列表,但只有一个布尔值代表所有这些值。
tableRowTrueOrFalse应该是布尔值数组而不是布尔值。然后你应该用默认值填充数组false。
$scope.tableRowTrueOrFalse = Array(availableFields.length).fill(false);
在你的 html 中,它会是这样的:
<table>
<tbody ng-repeat="field in availableFields">
<tr ng-class="{'orderTypeTableRowSelected':tableRowTrueOrFalse[$index]}">
<td style="padding:3px;">{{field.name}}</td>
<td style="padding:3px;">
<button type="button" ng-click="orderTypeTableRowSelected(field, $index)" class="btn btn-danger" style="margin-left:10px;"><i class="fas fa-check"></i> Required</button>
<button type="button" class="btn btn-warning"><i class="fas fa-check"></i> Default </button>
</td>
</tr>
</tbody>
</table>
然后在你的函数中,
$scope.orderTypeTableRowSelected = function (field, index) {
$scope.tableRowTrueOrFalse[index] = !$scope.tableRowTrueOrFalse[index];
console.log(field);
};
- 1 回答
- 0 关注
- 80 浏览
添加回答
举报