Запретить зацикливание в моей jQuery в ForEach L oop Laravel системе ответов - PullRequest
0 голосов
/ 03 апреля 2020

Я создаю функцию .toggle для моего раздела ответа. В основном, нажмите «Ответить» -> появится текстовое поле с кнопкой ответа »для этого конкретного c комментария.

Мой раздел ответа с отображением: нет

 <div class="replyArea" style="display:none;" id="replyArea-{{ $comment->id }}">
      //code      
 </div> 

Внутри foreach l oop - это мои комментарии $ comment->, каждый с кнопкой ответа

<a href="#" class="replyBtn">reply</a>

Мой jQuery прост

$('.replyBtn').click(function(e) {

        commentId = $(this).closest('div').data('id');
        var id = '#replyArea-' + commentId;     
        $(id).toggle();
    })

Это работает в FrontEnd, но когда я утешаю зарегистрируйте 'replyBtn', он вызывался 8-9 раз, в зависимости от количества полученных ответов, поскольку все кнопки ответа имеют одинаковый класс. Было бы лучше, если бы jQuery был настроен на уникальный идентификатор для каждой кнопки ответа, но в настоящее время я понятия не имею, как это сделать.

1 Ответ

0 голосов
/ 03 апреля 2020

Хорошо. Просто осознайте, что я идиот.

Я делал свой jQuery внутри клинка под названием 'commentdisplay', который включен в мой клинок 'show'. Таким образом, макет выглядит примерно так:

show.blade. php - commentdisplay.blade. php (@include commentdisplay.blade. php)

Вот почему я я получаю повторяющийся файл console.log всякий раз, когда я делаю jQuery в своем комментарии. Теперь я переместил это в show.blade. php и все в порядке.

Спасибо всем за ответы и предложения!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...