我正在尝试使用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)
您可以使用Shopify文档来解决这个问题。您尝试POST到update.js端点失败,因为您的设置不正确。请在此处查看调用此终结点的正确方法:
https://help.shopify.com/en/themes/development/getting-started/using-ajax-api#update-cart
我也遇到了麻烦,因为我试图删除购物车中的某些商品。一旦我添加contentType: 'application/json'
并将我发布的数据(例如JSON.stringify(data)
)字符串化,我就成功了。