1

使用 simpleCartjs 购物车框架,我希望在将商品添加到购物车时执行以下过程

  1. 检查商品名称是否已在购物车商品列表中。
  2. 从购物车项目列表中删除所述项目。
  3. 添加具有新购物车项目属性的单击项目。

以下代码停止添加相同数量的相同商品,但是如果我增加商品数量(我有一个更改 item_Quantity 跨度的下拉菜单),它将向购物车添加一个新商品。而且价格会根据数量而变化。我有我自己的更新 item_price 跨度的 js 代码。

simpleCart.bind('beforeAdd', function (item) {

    if (simpleCart.has(item)) {
        item.remove();
        return false;
    }
});

项目 1:名称 = “2014/06/06” 数量 = “2”

项目 2:名称 =“2014/06/07”数量 =“1”

如果我尝试使用 Quantity = "3" 添加项目 1,它会添加一个新项目,从而导致:

项目 1:名称 = “2014/06/06” 数量 = “2”

项目 2:名称 =“2014/06/07”数量 =“1”

项目 3:名称 =“2013/06/06”数量 =“3”

如果可能的话,我需要减轻这种行为。因为我需要删除该项目并重新添加所有 attr,因为我的服务器端验证将根据添加的数量响应新的 attr。

4

1 回答 1

1

这篇文章帮助惊人,给了我答案

simpleCart.bind('beforeAdd', function (newitem) {
       simpleCart.each(function (cartitem) {
        if (cartitem.get("name") === newitem.get("name")) {
            cartitem.remove();
        }
    });

});
于 2014-05-26T05:03:07.423 回答