Я работаю над корзиной для ящиков, заполненной через ajax для магазина.В этой корзине также есть поле количества с кнопками плюс и минус.Это код для кнопки «плюс»:
// This button will increment the value
$('.ajax-cart-form').on("click",'.qtyplus.qtyplus-2', function(){
// Get the field name
fieldName = $(this).attr('field');
// Get its current value
var currentVal = parseInt($('input[id='+fieldName+']').val());
// If is not undefined
if (!isNaN(currentVal)) {
// Increment
$('input[id='+fieldName+']').val(currentVal + 1);
} else {
// Otherwise put a 0 there
$('input[id='+fieldName+']').val(0);
}
var currentVal2 = parseInt($('input[id='+fieldName+']').val());
var currentProd = $('input[id='+fieldName+']').attr('id');
$.ajax({
type: 'POST',
url: '/cart/update.js',
data: { updates: { currentProd : currentVal2 }},
dataType: 'json',
success: function() {
$.ajax({
type: 'GET',
url: '/cart.js',
async: false,
cache: false,
dataType: 'json',
success: function() {
$.getJSON(_config.shopifyAjaxCartURL, function(cart) {
$('.drawer-subtotal').remove();
$('.ajax-subtotal').css('display','none');
$(function(index, cartItem) {
var line2= index +1;
var cents2 = "";
if (cart.original_total_price % 100 < 10) {
cents2 = "0";
}
var price2 = parseInt(cart.original_total_price/100) + "." + cents2 + cart.original_total_price % 100;
$('.ajax-subtotal2').append("<div class='drawer-subtotal'><h3>Subtotal <span class='money'>£"+ price2 +" GBP</span></h3></div>");
});
$('#item_count').text(currentVal2);
});
}
});
}
});
});
Как видите, я получаю значение поля количества для обновления количества в запросе поста ajax через переменную currentVal2.Это отлично работает.Я также получаю идентификатор продукта через идентификатор поля ввода.Я пробовал
alert(currentProd);
, и это правильно выводит идентификатор.Тем не менее, когда я пытаюсь использовать эту переменную в функции обновления, как это
data: { updates: { currentProd : currentVal2 }},
я получаю сообщение об ошибке, что update.js не найден, поэтому я предполагаю, что он не тянет в продуктИдентификатор правильно.
Если вместо этого я попытаюсь
data: { updates: { 35450129542: currentVal2 }},
, введите идентификатор продукта напрямую.
Есть идеи, как это исправить?