У меня есть страница, на которой я показываю несколько ОДИНАКОВЫХ div. Когда я нажимаю на отдельную ссылку, я хочу загрузить в те же самые div содержимое, которое я получил с сервера через Ajax. Проблема возникает, когда он загружает в этот один контент столько раз, сколько есть div. Итак, если у меня есть 3 точно таких же div, и я нажимаю, чтобы выполнить метод .load (), он загрузит 3 раза новый контент в каждый div. Я хочу, чтобы каждый элемент загружался только один раз.
HTML перед выполнением метода .load () (у меня 3 таких div на одной странице):
<div data-id-like="747" type="submit" class="submit-like">
<div class="load-here-747">
<div class="load-ajax-747">1</div>
</div>
</div>
После метода .load () каждый из 3 div будет выглядеть так:
<div data-id-like="747" type="submit" class="submit-like">
<div class="load-here-747">
<div class="load-ajax-747">2</div>
<div class="load-ajax-747">2</div>
<div class="load-ajax-747">2</div>
</div>
</div>
Ajax:
$(document).ready(function () {
$(document).on('click', 'div.submit-like', function () {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
let submit_like = $(this).data('id-like');
let token = $('meta[name="csrf-token"]').attr('content');
let all = $(`[data-id-like=${submit_like}]`);
let url = window.location.pathname;
$.ajax({
url: `/tweets/${submit_like}/like`,
type: 'POST',
data: {
'id': submit_like,
'__token': token
}
}).done(function () {
$(".load-here-" + submit_like).load(`${url} .load-ajax-${submit_like}`);
});
});
});
});