我试图从scopejs中的范围和数据库中删除记录但是我收到错误。虽然我的记录正在删除但未在范围内删除并显示错误。
未捕获的TypeError:无法读取未定义的属性'charAt'
这是我的代码。
<a ng-click="deleteUser(user.id)">Delete</a>
$scope.deleteUser = function (uid) {
if (confirm("Are you sure to delete this?")) {
$http.post("functions.php?type=deleteUser&uid=" + uid).success(function (data) {
$scope.users.splice(uid, 1);
});
}
};
答案 0 :(得分:0)
您可以尝试在user
之前获取post
,然后
var index = $scope.users.indexOf(user);
$scope.users.splice(index, 1);
答案 1 :(得分:0)
你可以做以下事吗: 1.当你在init方法中第一次绑定数据时。
var bindToGrid=function(){
$scope.usersData=data;//from api
}
2。在删除时,您正在调用正确的api。
$scope.deleteUser = function (uid) {
if(confirm("Are you sure to delete this?")){
$http.post("functions.php?type=deleteUser&uid="+uid).success(function(data){
$scope.users.splice(uid, 1);
});
}
};
3。但是在成功之后你必须再次调用init,如下所示
$scope.deleteUser = function (uid) {
if(confirm("Are you sure to delete this?")){
$http.post("functions.php?type=deleteUser&uid="+uid).success(function(data){
$scope.bindToGrid();
});
}
};
这将重新绑定到您的模型对象并反映更改。