通过ajax刷新WooCommerce迷你购物车

问题描述 投票:0回答:2

我通过自定义插件将商品添加到购物车,一切都按我需要的方式工作,但是迷你购物车没有更新,我似乎无法触发刷新。 这是我的一段代码供参考:

javascript: jQuery.ajax({

        url: '/result/',

        data:{post_title:title, post_content:detail,price:price,quantity:quantity},

        success:function (data_rdx) {

            jQuery(".fr-loading").hide();



            if(data_rdx=='fail') {

                alert("Error, Please Try Again");

            } else {

                jQuery(".orb_custom").html(data_rdx);

                //trigger mini-cart refresh
                alert('Cart Updated');

            }

        }});

我尝试用

wc-ajax=get_refreshed_fragments
添加一个小的 ajax 帖子,但似乎不起作用。触发刷新的最简单方法是什么?

谢谢你。

javascript jquery ajax wordpress woocommerce
2个回答
9
投票
jQuery(document.body).trigger('wc_fragment_refresh');

0
投票
function woocommerce_header_add_to_cart_fragment( $fragments ) {
    
    $fragments['li.cart-open'] = '<ul><li class="cart-open"><a href="javascript:void(0)" class="cart" title="Cart"> 
                         <svg xmlns="http://www.w3.org/2000/svg" width="96" height="96" viewBox="0 0 96 96" class="svg-large"><switch><g><path d="M68 24v-4C68 8.954 59.046 0 48 0S28 8.954 28 20v4H12v60c0 6.63 5.37 12 12 12h48c6.63 0 12-5.37 12-12V24H68zm-32-4c0-6.627 5.373-12 12-12s12 5.373 12 12v4H36v-4zm40 64c0 2.21-1.79 4-4 4H24c-2.21 0-4-1.79-4-4V32h56v52z"/></g></switch></svg>
                         <i>'.WC()->cart->get_cart_contents_count().'</i>
                         </a></li></ul>';
    
    return $fragments;
}
© www.soinside.com 2019 - 2024. All rights reserved.