0
我在我的控制器中做了一个删除功能,但它不能正常工作。它总是删除数组表中的最后一个对象。可能是什么问题?如何从表格中正确删除一个对象?
谢谢!
app.js
table.controller('TodoCtrl', function ($scope, $http, $localStorage) {
$scope.$storage = $localStorage.$default({
"extraTodo": [],
"todos":[
{ "id":1,"text":"learn AngularJS", "color":"red", "progress":30},
{ "id":2,"text":"build an AngularJS app", "color":"blue", "progress":30},
{ "id":3,"text":"learning Python", "color":"red","progress":70},
{ "id":4,"text":"build an Python app", "color":"blue", "progress":80},
]
});
$scope.extraTodoData = $localStorage.extraTodo;
$scope.todoData = $localStorage.todos;
$scope.Delete = function (del) {
console.log(del);
var result = confirm('Are you sure?');
if (result === true) {
var index = getSelectedIndex(del);
del.splice(index, 1);
};
};
function getSelectedIndex (del) {
console.log(del);
for(var i = 0; i < del.length; i++)
if(del[i].id == del)
return i;
return -1;
};
的index.html
<button class="btn btn-danger btn-sm ng-scope" ng-click="Delete($storage.extraTodo)"><span class="glyphicon glyphicon-trash"></span></button>
<button class="btn btn-danger btn-sm ng-scope" ng-click="Delete($storage.todos)"><span class="glyphicon glyphicon-trash"></span></button>
是否要删除'del'指定的对象? 'del'是一个id还是一个索引? – Lucas
你错过了getSelectedIndex函数的循环中的括号 – TonalLynx
'if(del [i] .id == del)'这特别令人困惑...... – Lucas