@OlegGazmanov

Почему удаляется только последняя запись в скрипте?

Привет.
Есть скрипт который должен удалять комментарии под постами, но он удаляет только последний комментарий без перезагрузки. А когда я пытаюсь удалить другие комментарии, мне возвращается страница с ответом из контроллера
return response()->json([
     'message' => 'deleted...'
]);


Такое чувство, как будто скрипт подцепляет только последний id комментария, хотя в скрипте вроде написано что при нажатии на кнопку с iddeleteComment{{$comment->id}}

Скрипт
$.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
    });

    $(document).ready(function () {
        $("body").on("click","#deleteComment{{$comment->id}}",function(e){
            e.preventDefault();

            var id = $(this).data('id');
            var token = $("meta[name='csrf-token']").attr("content");

            $.ajax({
                url: "{{route('deleteComment', ['id' => $user->id, 'postId' => $post->id, 'commentId' => $comment->id])}}",
                type: "DELETE",
                data: {_token: token, id: id},
                success: function() {
                    $("div.commentPost[data-id="+id+"]").remove();
                },
            });
        });
    });


И html
<div id="commentPost">
        @foreach($post->comments as $comment)
            <div class="container allalbums mb-5 mt-3 commentPost" style="margin-bottom: 70px" id="commentPost{{$comment->id}}" >
                <div class="col-12">
                    <div class="card-body">
                        <div class="row">
                            <div class="col-md-2">
                                <div class="img_avatar " style="background-image: url({{$comment->user_avatar}});"></div>
                            </div>
                            <div class="col-md-10">
                                <p>
                                    <a class="float-left" href="{{route('profile', ['nickname' => $comment->user_name])}}"><strong class="mr-2">{{$comment->user_name }}</strong></a><small class="text-muted">{{$comment->created_at->diffForHumans()}}</small>
                                </p>
                                <div class="clearfix"></div>
                                <p>{{$comment->comment}}</p>

                                @if($comment->user_id == $post->user_id)
                                    <form action="{{route('deleteComment', ['id' => $user->id, 'postId' => $post->id, 'commentId' => $comment->id])}}" method="post" id="deleteComForm{{$comment->id}}">
                                        @csrf @method('DELETE')
                                        <button type="submit" class="btn  mr-1 delButton" id="deleteComment{{$comment->id}}"></button>
                                        <button type="button" class="btn btn-sm btn-outline-dark ml-1" id="editCommentBtn{{$comment->id}}">edit</button>
                                    </form>
                                @endif

                            </div>
                        </div>
                    </div>
                </div>
            </div>
        @endforeach
    </div>
  • Вопрос задан
  • 24 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы