我已设法在Shopify中的购物车数量字段中添加一个下拉菜单。这似乎工作正常 - 您从产品页面添加产品,它是正确的数量。您单击购物车中的数量并显示下拉列表,然后您可以根据需要更改它,但是如果我将其从原始选择的数字更改为另一个,然后点击更新按钮,购物车刷新但数量,以及因此总价格不会更新为新选择的金额。相反,它只是恢复到第一个选择的数量。
在JavaScript方面我不是很了解,所以我不确定我缺少什么。这是代码 - 如果您还需要其他任何信息,请告诉我并向您道歉。
<td class="quantity">{% if item.variant.title contains "Sample" %}<input type="hidden" class="field" value="{{ item.quantity }}" data-id="{{ item.variant.id }}">{{ item.quantity }}
{% else %}
<select id="updates_{{ item.variant.id }}" name="updates[]" class="drops">
{% for i in (2..20) %}
<option value="{{ i }}" {% if item.quantity == i %} selected{% endif %}>{{ i }}</option>
{% endfor %}
</select>{% endif %}</td>
然后这里有一些与更新有关的javascript:
CartView.prototype.events = {
'change .quantity .field': 'updateQuantity',
'change .instructions textarea': 'saveNote',
'click .get-rates': 'calculateShipping',
'keydown #address_zip': 'calculateShipping'
};
CartView.prototype.updateQuantity = function(e) {
var id, input, quantity, url;
input = $(e.currentTarget);
quantity = input.val();
id = input.data('id');
url = "/cart/change/" + id + "?quantity=" + quantity;
return window.location = url;
};