Magento使用jquery加倍购物车数量

时间:2014-04-14 07:30:42

标签: jquery magento magento-1.8

因此我们在自定义主题中遇到了脚本问题。

该脚本直接从类别页面将简单产品添加到购物车。但是,它会复制产品数量,因此每次客户点击时都会添加两个。

html是

<a class="add-to-cart simple-product" rel="nofollow" href="<?php echo $this->helper('checkout/cart')->getAddUrl($_product, array()) ?>"><?php echo $this->__('Add to cart') ?></a>

,脚本是

    $('a.add-to-cart.simple-product').live('click', function(event) {
        event.preventDefault();
        $('div.popup').remove();
        $.fancybox.showActivity();
        $.post($(this).attr('href'), function(response) {
            $.fancybox.hideActivity();
            $('div.popup').remove();
            $('#header ul.menu > li:last').replaceWith($(response));
            initCartDrop();
            $('#header ul.menu > li:last a.my-cart').trigger('mouseenter');
        });

当我打开firebug查看正在发生的事情时,我看到一个post命令,接着是一个get命令到一个url http://oursite.co.uk/checkout/cart/add/uenc/dsadadad/product/380/form_key/asasasas/

任何人都可以帮忙解释为什么这会重复数量吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

你知道吗,我尝试使用bind代替live in jquery,这设法解决了问题。更新的代码是: -

$('a.add-to-cart.simple-product').bind('click', function(event) {
            event.preventDefault();
            $('div.popup').remove();
            $.fancybox.showActivity();
            $.post($(this).attr('href'), function(response) {
                $.fancybox.hideActivity();
                $('div.popup').remove();
                $('#header ul.menu > li:last').replaceWith($(response));
                initCartDrop();
                $('#header ul.menu > li:last a.my-cart').trigger('mouseenter');
            });