OlegGazmanov, Первое что приходит в голову, так это что у тебя не правильно написан JS код.
$("body").on("click","#delete",function(e){
Здесь ты кликаешь по записи, если записей на странице много, то ID на странице одинаковых не может быть много, соответственно у всех записей должен быть класс .delete
Второй момент
var id = $(this).attr('data-id');
Скорее всего у каждой записи в цикле в атрибуте data-id ты присваиваешь реальный ID записи, например:
$post->id
Затем в переменную JS var id сохраняешь ID записи по которому кликнули, но потом:
url: "{{route('deletePost',['id' => $post->id])}}",
Передаешь не ID JS, который получил, а php $post->id, соответственно вопрос, у тебя на странице скрипт выводится и плодится тоже в цикле? тогда это не правильно, сюда нужно передавать ID элемента по которому кликнули, соответственно на JS (var id )
Ну и здесь:
success: function (response){
$("#deletePost").html(response.message);
}
Здесь у тебя выведется инфа о том, что пост удален, а запись на странице останется, соответственно ее так-же нужно удалять на странице remove() через JS, это первое, что пришло в голову пересмотри сам скрипт
в url лучше формируй прямую ссылку на удаление записи(строкой).