Итак, у меня есть этот код, который проверяет, является ли значение списком или отдельной строкой. Если это список, он создает и добавляет элемент img в элемент div каждый раз Django для циклов l oop. Иначе, он просто создает один элемент img и добавляет его в элемент div.
Но проблема в том, что данные из предыдущего l oop остаются. Это означает, что код JavaScript не обновлялся / не стирался каждый раз, когда зацикливался. Есть ли способ это исправить? Спасибо!
<script type="text/javascript">
var index = 0
let postImages = {{ postImages|safe }};
</script>
{% for info in post %}
<a class="link_to_detail" href="{{ info.4 }}">
<div class="card">
<div class="images">
</div>
<div class="description">
<h3>{{ info.0 }}</h3>
<p>{{ info.1 }}</p>
<p><strong>{{ info.2 }}</strong></p>
<p>{{ info.3|truncatechars:150 }}</p>
</div>
</div>
</a>
<script type="text/javascript">
console.log(typeof(postImages[index]))
if (typeof(postImages[index]) == "object"){
console.log(slides);
document.querySelector('.images').classList.add('slides');
for (let j = 0; j < postImages[index].length; j++){
let img = document.createElement('img');
let slides = document.querySelector('.slides')
img.classList.add('image');
img.src = postImages[index][j];
console.log(postImages[index].length)
slides.appendChild(img);
}
} else {
let img = document.createElement('img');
let images = document.querySelector('.images');
img.classList.add('image');
img.setAttribute('src', postImages[index]);
images.appendChild(img);
console.log(images);
}
index++;
</script>
{% endfor %}