Shopify Liquid添加到购物车按钮,无法取消价格

时间:2014-10-15 20:13:58

标签: jquery shopify liquid

我有一个添加到购物车按钮,显示该项目的价格。我只希望它显示'添加到购物车'。我一直试图取消价格,但每次我在页面上做一些其他元素都停止工作。

这是负责显示按钮价格的代码:

// Enabling add to cart button.
  var addBtnText = Shopify.formatMoney(variant.price, {{ shop.money_format | json }});
  if ( variant.compare_at_price > variant.price ) {
    jQuery('#add').addClass('on-sale');
    addBtnText += ' <span class="pre-sale-price">' + Shopify.formatMoney(variant.compare_at_price, {{ shop.money_format | json }}) + '</span>';

  } else {
    jQuery('#add').removeClass('on-sale');
  }
  addBtnText += ' <span class="div">|</span> {{ settings.txt_add | escape }}';
  jQuery('#add').removeClass('disabled').removeAttr('disabled').html(addBtnText);

第一个{{shop.money_format | json}}似乎很重要,因为删除它会从页面中删除所有jquery。

所以我有一种方法可以使用上面的代码,因此购物车根本没有显示variant.price,只是说“添加到购物车”。 (以及&#39;添加到购物车&#39;点击后)。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

删除第一行会导致问题,因为它定义了addBtnText变量,该变量在代码中被进一步引用。如果您只想显示&#34;添加到购物车&#34;在按钮上,您可以在html中执行此操作:

<input type="submit" id="add" name="add" value="Add to Cart" class="btn" />

使用jQuery更改click上的值:

jQuery('#add').click(function() {
  jQuery('#add').val('Added to Cart');
});

或者,如果您想重复使用代码段从设置中加载按钮文本,可以尝试以下方法:

var addBtnText = '{{ settings.txt_add | escape }}';
jQuery('#add').html(addBtnText);

jQuery('#add').click(function() {
  jQuery('#add').html('Added to Cart');
});