我有opencart。将产品添加到购物车的函数addToCart()在普通页面上正常工作。
我创建了自定义页面,其中只有触发函数addtoCart()的按钮。只是正常的按钮..
在普通页面(它工作的地方)我得到正常的回复。
请看这个图片的链接: http://imgur.com/7M1AR1B,FKjiU05,9ggmiMR#2
第三张图片实际上是可行的帖子,第二张图片是可以正常工作的回复。 第一张图片是空的响应,我在打开的购物车中获得自定义页面。
你知道为什么会这样吗?
我使用函数addToCart()并在该自定义页面中使用硬变量FOR TEST,这意味着变量总是在那里传递。我使用硬变量,所以我不必解释如何在代码中传回变量(它的工作方式相同,它会在调试中传递所有内容)。问题是我只在自定义页面上得到“空”响应。回复:[] ......
function addToCart() {
var product_id = 79;
var quantity = 1;
$.ajax({
url: 'index.php?route=checkout/cart/add',
type: 'post',
data: 'product_id=' + product_id + '&quantity=' + quantity,
dataType: 'json',
success: function (json) {
$('.success, .warning, .attention, .information, .error').remove();
if (json['redirect']) {
location = json['redirect'];
}
if (json['success']) {
$('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
$('.success').fadeIn('slow');
$('#cart-total').html(json['total']);
$('html, body').animate({
scrollTop: 0
}, 'slow');
}
}
});
}
答案 0 :(得分:0)
尝试的可能性
如果以上都不是问题,你需要弄清楚请求之间的确切差异,尽管我的猜测是我列出的三种可能性之一
答案 1 :(得分:0)
问题是,我正在添加一个没有1个必需属性的产品,因此我总是得到空的回复。 opencart中有一个属性,您必须设置产品所属的商店。如果您以编程方式将商品添加到商店中,则不设置该属性,您将添加产品,但无法将其添加到购物车。