Vous devez passer le $index
à la delete
method et supprimer cet élément de data
objet
HTML
<ul>
<li ng-repeat="row in data">
{{row.ID}}
{{row.subject}}
{{row.body}}
<a ng-click="delete(row.ID, $index)">Delete</a>
</li>
</ul>
JS
$scope.delete = function(deletingId, index){
$http.get("delete.php?id=" + deletingId)
.success(function(data){
$scope.data.splice(index, 1);
})
}
Ne faites pas non plus
- Utiliser un nom différent pour la clé ng-repeat (Maintenant, j'ai changé pour
row
au lieu dedata
) - Ne videz pas l'attribut href="" car lorsque vous cliquez sur cette page entière peut s'actualiser (maintenant j'ai supprimé ceci)
- N'utilisez pas de syntaxe obsolète en PHP. Utiliser
PDO
au lieu demysql_*