我有一个$ scope.taskList,它包含许多任务对象。我有一个表格,我可以更新任务。首先我选择任务然后将其数据加载到表单。进行更改并在按下列表中的保存按钮对象后进行更新。一切都很好看。但是在保存之后,如果我继续更改表单中的值,则更新时会更新数据(无需单击保存)
我的提交功能如下:
$scope.submitTaskForm = function() {
if ($scope.createTaskForm.$valid) {
$http({
method: "post",
url: '/admin/json/manage/task',
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
data: $scope.task
}).success(function (response) {
if (response.status == 'success') {
var index = 0,
updated = false;
$scope.task = response.task;
while ((index < $scope.taskList.length) && (updated == false)) {
if ($scope.taskList[index].id == $scope.task.id) {
$scope.taskList[index] = $scope.task;
updated = true;
}
index++;
}
if (updated == false) {
$scope.taskList.push($scope.task);
$scope.itemAdded();
}
alert('Successfully saved');
} else {
alert(response.message);
}
});
}
};
我确定这是因为这行$scope.taskList[index] = $scope.task;
但我不知道如何解决它