如何更新WooCommerce购物车图标以显示添加了JavaScript的新产品

时间:2020-07-13 作者:Jonattan Salcedo

我创建了一些自定义链接,使用;href";属性,我的代码如下所示。

<a class="line1" id="btn2" href="?add-to-cart=5207">Example</a>
但我不喜欢这样一个事实,每次我添加一个产品,它都会刷新整个页面,所以我开始寻找一种不同的方法,我找到了一种使用jQuery代码的方法,它会添加产品,但由于页面没有重新加载,购物车图标在我手动重新加载页面之前不会更新。代码如下所示。

jQuery(document).ready(function( $ ){   
    $(\'#buy\').click(function(e) {
       console.log(\'Working!!\')
       e.preventDefault();
       prodId = $(this).attr("data-prod-id");
       addToCart(prodId);
       return false;
    });    

    function addToCart(p_id) {
       $.get(\'?add-to-cart=\' + p_id, function() {
           // call back
       });
     }
});
有没有办法向jQuery函数中添加一些代码,以便只更新购物车图标,从而显示添加的新产品?

1 个回复
SO网友:bjornredemption

下面是一篇很好的文章,介绍了如何做到这一点,但与您的方法截然不同:https://aceplugins.com/ajax-add-to-cart-button-on-the-product-page-woocommerce/

因为你知道有多少物品被添加到购物车(1个基于你的链接),你可以假装一些添加并更新购物车图标值

假设购物车图标编号的id为“购物车图标”,例如:

 function addToCart(p_id) {
   $.get(\'?add-to-cart=\' + p_id, function() {
      // SO IF YOU ALREADY HAD 3 IN CART IT WILL NOW BE 4
       $(\'#cart-icon\').text( $(\'#cart-icon\').text() + 1);

   });
 }

相关推荐

如何在jQuery中传递博客信息(Url)

我需要帮助来实现这一点,我想在jquery窗口中传递网站url。地方替换(“URL”),我希望它像此窗口一样工作。地方替换(“site_url/联系我们”)我的整个概念是重定向到www.mysite。com/联系我们,但我正在访问www.mysite。com/登录/联系我们这是我的完整代码// PHP // Add the javascript file only if user is logged in and page id login if ( is_user_logged