Как добавлять товар в корзину, jquery?
Всем привет! Возникла такая проблема: Есть корзина для интернет магазина на jquery, но в нее почему-то всегда добавляется один и тот же товар (самый первый). То есть если я добавляю товар в корзину с индивидуальной страницы товара, то все хорошо, работает как надо. Но у меня есть вывод товаров на главной странице магазина, и вот когда пытаюсь добавить товар именно с главной страницы, то независимо от выбранного товара всегда добавляется один и тот же. Подскажите пожалуйста, в чем проблема?
Вывод товара сделан циклом, форма для отправки инф о товаре выглядит так:
<form class="row g-3 form_buying_product" action="{% url 'basket_adding' %}">
{% csrf_token %}
<div class="col-3">
<input type="number" class="form-control number" name="number" min="1" value="1">
</div>
<div class="col-auto">
<button type="submit" class="btn btn-warning submit_btn"
data-product_id="{{ product_img.product.id }}"
data-name="{{ product_img.product.title }}"
data-price="{{ product_img.product.price }}"
>в корзину</button>
</div>
</form>
Вот так добавляется товар в корзину:
$(document).ready(function(){
var form = $('.form_buying_product');
function basketUpdating(product_id, nmb, is_delete){
var data ={};
data.product_id = product_id;
data.nmb = nmb;
var csrf_token = $('.form_buying_product [name="csrfmiddlewaretoken"]').val();
data["csrfmiddlewaretoken"] = csrf_token;
if (is_delete){
data['is_delete'] = true
}
var url = form.attr("action");
$.ajax({
url: url,
type: 'POST',
data: data,
cache: true,
success: function (data) {
if (data.products_total_nmb || data.products_total_nmb == 0){
$('#basket_total_nmb').text(data.products_total_nmb)
$('.basket-items ul').html("");
$.each(data.products, function(k, v){
$('.basket-items ul').append('<li>'+v.name+', '+v.nmb+' шт. '+' по '+v.price_per_item+' руб ' +
'<a class="delete-item" href="" data-product_id="'+v.id+'">X</a>'+
'</li>');
});
}
}
})
}
form.on('submit', function(e){
e.preventDefault();
var nmb = $('.number').val();
var submit_btn = $('.submit_btn');
var product_id = submit_btn.data('product_id');
var product_name = submit_btn.data('name');
var product_price = submit_btn.data('price');
basketUpdating(product_id, nmb, is_delete=false);