Событие клика работает только для первого элемента в цикле в шаблоне Django.Javascript

Форум по Javascript
Anonymous
Событие клика работает только для первого элемента в цикле в шаблоне Django.

Сообщение Anonymous »

Я просматриваю словарь корзины, находящийся в сеансе, и определил продукт для всех элементов. При нажатии каждой кнопки элемента корзины они отправляются через ajax, но отправляется только первый элемент, даже если для каждого элемента указан идентификатор продукта.

Код: Выделить всё

{% for item in cart %}

#somecode
 + 
 - 

{% endfor %}
  • js

    Код: Выделить всё

     $(document).ready(function(){
    var increaseBtn = document.querySelector(".increase-item");
    var decreaseBtn = document.querySelector(".decrease-item");
    
    increaseBtn.addEventListener("click", function(){
    var itemId = $(this).closest('.items').data('product-id');
    updateQuantity(itemId, "increase");
    })
    
    decreaseBtn.addEventListener("click", function(){
    var itemId = $(this).closest('.items').data('product-id');
    updateQuantity(itemId, "decrease");
    })
    
    function updateQuantity(id, action){
    $.ajax({
    type: 'POST',
    url: '{% url "cart:update_quantity" %}',
    data: {'id': id, 'action': action, 'csrfmiddlewaretoken': '{{ csrf_token}}'},
    success: function(data){
    $("#total-items").text(data.total_items);
    },
    })
    }
    })
    


Подробнее здесь: https://stackoverflow.com/questions/798 ... o-template

Вернуться в «Javascript»