Você precisa passar o
$index para delete e remova esse item de data objeto 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);
})
}
Também não faça
- Use um nome diferente para a chave ng-repeat (agora mudei para
rowem vez dedata) - Não esvazie o atributo href="" porque quando você clicar nesta página inteira poderá atualizar (agora eu removi isso)
- Não use sintaxe obsoleta em PHP. Use
PDOem vez demysql_*