防止点击"添加到购物车"如果未选择特定产品,请按此按钮 - Shopify

时间:2018-06-05 22:29:29

标签: shopify

嗨,专家们度过了愉快的一天, 我在Shopify上有一个项目,当我针对某些条件选择特定产品时,我会如何预防和警惕。

我制作了一个产品模板,其中我将来自集合A的产品列表作为第一组选择和集合B填充为第二组选择。

这是一个产品页面,我可以从集合A中选择1个产品,也可以从集合B中选择1个产品(每个产品都有“添加到购物车”按钮)

条件是集合A需要从集合B中添加至少1个产品,而集合B不需要从集合A中添加产品。

这是我要实现的目标: 当来自集合A按钮的任一产品点击时,它会发出警报 "需要从B"

集合中选择至少一种产品

我将cart.js用于产品模板中的多个产品。 这可能吗?或者有最简单的方法来实现这个目标吗?

由于

1 个答案:

答案 0 :(得分:0)

我无法说明cart.js的内部运作方式,但您通过常规Javascript应该可以合理地直截了当地说明。

你想要做的是:

  • 提交表格A;
  • 选择表格B;
  • 检查表格B是否选择了变体;
  • 如果表单B中没有变体
  • ,则阻止添加到购物车操作

如果cart.js有一种简单的方法来插入验证功能,那么我将插入代码。否则,我会将验证功能添加到表单提交或单击提交按钮,以cart.js正在播放的方式更方便。

样本验证功能类似于:

function validateFormA(evt){
  var formB = document.forms('product-form-b'); // document.forms can access any form on the page using the appropriate ID attribute

  if(!form){
    // Couldn't find form, should this pass or fail?
    return;
  }

  var variantIdField = form.id;  // To access the form control with the name 'id'
  var value = variantIdField.value;
  if(!value){
    evt.preventDefault();
    return false;
  }
  return true;
}