使用jquery ajax无法正常工作将产品添加到购物车

时间:2014-11-14 12:36:00

标签: php jquery magento cart

我使用ajax使用代码在购物车中添加产品:

$cart = Mage::getModel('checkout/cart')->getQuote();
$cart->addProduct($product,array('qty'=>1));
$cart->save();
Mage::getSingleton('checkout/session')->setCartWasUpdated(true);

当我点击添加到购物车时,这会成功添加产品(比如说CPU),然后我添加任何其他产品(比如笔记本电脑)然后它无法在购物车中添加笔记本电脑产品但是当我添加笔记本电脑产品时时间然后它成功添加到购物车。我无法找到问题所在。请帮忙。 提前谢谢。

2 个答案:

答案 0 :(得分:1)

在magento中,添加到购物车的过程是一个简单的表单提交过程,因此页面重新加载。因此,基于Ajax的购物车作为一种解决方案来加快购买过程。一步一步的过程:How to Add Product To Cart Using Ajax

答案 1 :(得分:0)

只需按下带有url属性的按钮上的呼叫产品添加到购物车链接即可。

> <button type="button" title="<?php echo $this->__('add to cart') ?>"
> class="button btn-cart addsample" url ="<?php echo
> $this->getAddToCartUrl($_product) ?>"><span><span><?php echo
> $this->__('add to cart') ?></span></span></button></div>

现在使用这个ajax帖子。

$j('button.addsample').click(function(){
            $j(this).attr('disabled','disabled');

            $j.ajax({
                            type: "POST",
                            cache   : false,
                            dataType: 'json',
                            url: $j(this).attr('url'),
                            data: data,
                            success:function(data){

                                setTimeout(function() {
                                            window.location.reload();
                                    }, 1600);   


                                },
                            error:function(){

                                    setTimeout(function() {
                                            window.location.reload();
                                    }, 1600);   

                        }


            });

    });

这里我发送ajax帖子到magento的默认添加到购物车控制器..希望这对你有所帮助