当我按下编辑按钮时,编辑输入块中的任务shoukld apper的值。 我制作了这段代码,但它只显示当前行的索引:(
<tr ng-repeat="task in tasks">
<td>
<button class="btn btn-danger" ng-click="deleteTask($index)">Delete</button>
<!-- $index-->
</td>
<td>{{task.taskName}}</td>
<td>
<input type="checkbox" ng-model="statusCheck"> </td>
<td style="{{setStyleToTd(statusCheck)}}">{{statusChecker(statusCheck)}}</td>
<td>
<button class="btn btn-primary" ng-click="editTask($index)">Edit</button>
</td>
</tr>
$scope.editTask = function (taskToDelete) {
$scope.editTaskInput = taskToDelete;
}
答案 0 :(得分:3)
您可以使用ng-click="editTask(task.taskName)"
代替ng-click="editTask($index)"
来解决此问题。
您需要更新任务名称。因此,您应该在task
点击事件中传递$index
个对象而不是edittask()
。然后,您可以从taskname
对象中获取当前选定的task
,也可以更新。
试试这个
<tr ng-repeat="task in tasks">
<td>
<button class="btn btn-danger" ng-click="deleteTask($index)">Delete</button>
<!-- $index-->
</td>
<td>{{task.taskName}}</td>
<td>
<input type="checkbox" ng-model="statusCheck"> </td>
<td style="{{setStyleToTd(statusCheck)}}">{{statusChecker(statusCheck)}}</td>
<td>
<button class="btn btn-primary" ng-click="editTask(task)">Edit</button>
</td>
</tr>
$scope.editTask = function (taskToEdit) {
$scope.editTaskInput = taskToEdit.taskName;
}