为了透明度:这是我在 Shopify 论坛中提出的请求的精确副本,但我没有得到任何帮助(除了解决问题的昂贵报价......)。
我拥有一家 Shopify 商店,它在结帐前使用弹出式购物车。我在弹出式购物车上使用以下代码,以使客户能够增加或减少购物车中的商品数量:
<div class="input-group m-0">
<input type="button" value="-" class="button-minus" data-field="quantity">
<input id="{{ item.variant.id }}" type="number" step="1" max="" value="{{ item.quantity }}" name="quantity" class="quantity-field">
<input type="button" value="+" class="button-plus" data-field="quantity" onclick="Shopify.addItem({{ item.variant.id }}, 1)">
</div>
如您所见,我在触发 onclick 时使用 Shopify.addItem() 函数以增加购物车中每个产品的商品数量。这个功能确实有效。遗憾的是,我没有找到任何将数量减少 1 的函数。因此,我编写了一些 JavaScript,但遗憾的是它不起作用。在这里找到代码:
$('.input-group').on('click', '.button-minus', function(e) {
e.preventDefault();
var fieldName = $(e.target).data('field');
var parent = $(e.target).closest('div');
var currentVal = parseInt(parent.find('input[name=' + fieldName + ']').val(), 10);
var currentVariant = parseInt(parent.find('input[name=' + fieldName + ']').attr('id'), 10);
jQuery.post('/cart/change.js', { quantity: currentVal - 1, id: currentVariant });
});