Sie müssen den $index
übergeben zum delete
-Methode und entfernen Sie dieses Element aus data
Objekt
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);
})
}
Auch Don't do's
- Verwenden Sie einen anderen Namen für die ng-Wiederholungstaste (Jetzt habe ich zu
row
gewechselt stattdata
) - Leeren Sie das Attribut href="" nicht, da beim Klicken möglicherweise die gesamte Seite aktualisiert wird (das habe ich jetzt entfernt)
- Verwenden Sie keine veraltete Syntax in PHP. Verwenden Sie
PDO
anstelle vonmysql_*