我正在尝试使用Shopify Ajax API从购物车中移除产品,但是该产品没有被移除,我得到了Unexpected token: ':'
控制台错误。
$(".slide-cart-remove").on("click", function() {
var id = $(this).attr("id");
jQuery.post('/cart/update.js', {updates: {id: 0}});
});
在单击“删除”按钮时,我正在调用API以将其数量更新为0。“删除”按钮的ID是我要删除的产品的variant_id
这就是为什么我要通过它。
如果有任何区别,这就是我给它与variant_id
相同的ID的方法:
$(productRemove).attr("id", data.items[i].variant_id);
语法中是否缺少某些内容?
编辑:如下所述,我尝试将语法更改为此:
jQuery.post('/cart/update.js', {quantity: 0, id: varId});
但是,它似乎仍然不起作用。 (请注意,varId
变量包含购物车中产品的实际变体ID )
答案 0 :(得分:2)
您可以使用Shopify文档来解决这一问题。由于设置不正确,您尝试POST到update.js端点的尝试失败。在此处查看调用此端点的正确方法:
https://help.shopify.com/en/themes/development/getting-started/using-ajax-api#update-cart
答案 1 :(得分:0)
我也在尝试移除购物车中的某些物品时遇到了麻烦。添加contentType: 'application/json'
并对输入的数据进行字符串化(例如JSON.stringify(data)
)后,我就成功了。