如何从 select 菜单更改为按钮
how to change from a select menu to buttons
我使用 snipcart 集成了一个购物车按钮。我创建了一个包含产品选项的 select 菜单,并且我有一些 javascript 将 selected 选项与按钮相关联,以便在单击“添加”时将正确的选项添加到购物车到购物车。
我想使用按钮而不是下拉 select 菜单。我不确定如何更改我的代码。
<select id="color">
<option>red</option>
<option>blue</option>
<option>yellow</option>
</select>
<button
id="add-button"
class="snipcart-add-item
data-item-name="shirt"
data-item-custom1-name="color"
data-item-custom1-options="red|blue|yellow">
Add to cart
</button>
<script>
$('#color').change(function() {
$('#add-button').attr('data-item-custom1-value', $(this).val());
});
</script>
如果您想在将商品添加到购物车之前对其进行更新(您希望在产品页面而不是购物车中使用颜色选项),您可以创建多个按钮并更新 data-item-custom1-value单击时。
<button class="options" data-value="red">Red</button>
<button class="options" data-value="blue">Blue</button>
<button class="options" data-value="green">Green</button>
const addButton = document.querySelector('#add-button');
document.querySelectorAll('.options').forEach(option => {
option.addEventListener('click', () => {
const value = option.getAttribute('data-value')
addButton.setAttribute('data-item-custom1-value', value)
})
})
如果你想用按钮替换购物车内的按钮,很遗憾,目前这是不可能的。话虽这么说,我肯定会在我们的积压工作中添加自定义字段覆盖!
如果您还有其他问题,可以发送电子邮件至 support@snipcart.com!
干杯
Lea - Snipcart 的开发人员
我使用 snipcart 集成了一个购物车按钮。我创建了一个包含产品选项的 select 菜单,并且我有一些 javascript 将 selected 选项与按钮相关联,以便在单击“添加”时将正确的选项添加到购物车到购物车。
我想使用按钮而不是下拉 select 菜单。我不确定如何更改我的代码。
<select id="color">
<option>red</option>
<option>blue</option>
<option>yellow</option>
</select>
<button
id="add-button"
class="snipcart-add-item
data-item-name="shirt"
data-item-custom1-name="color"
data-item-custom1-options="red|blue|yellow">
Add to cart
</button>
<script>
$('#color').change(function() {
$('#add-button').attr('data-item-custom1-value', $(this).val());
});
</script>
如果您想在将商品添加到购物车之前对其进行更新(您希望在产品页面而不是购物车中使用颜色选项),您可以创建多个按钮并更新 data-item-custom1-value单击时。
<button class="options" data-value="red">Red</button>
<button class="options" data-value="blue">Blue</button>
<button class="options" data-value="green">Green</button>
const addButton = document.querySelector('#add-button');
document.querySelectorAll('.options').forEach(option => {
option.addEventListener('click', () => {
const value = option.getAttribute('data-value')
addButton.setAttribute('data-item-custom1-value', value)
})
})
如果你想用按钮替换购物车内的按钮,很遗憾,目前这是不可能的。话虽这么说,我肯定会在我们的积压工作中添加自定义字段覆盖!
如果您还有其他问题,可以发送电子邮件至 support@snipcart.com!
干杯
Lea - Snipcart 的开发人员