WooCommerce AJAX购物车更新后运行jQuery



WooCommerce:

我有一些加载在document.ready上的jQuery,它会影响数量输入框。效果很好。

我的问题是,当我更新cart/delete项时,jQuery需要再次运行,因为AJAX调用会杀死它(刷新它(。我是否可以添加一些钩子/过滤器,以便在购物车更新后再次运行我的脚本?我搜索了一下,什么也找不到(或者可能我不知道自己在找什么(。

谢谢!!!!

WooCommerce脚本内置了几个自定义事件。您自己的脚本可以监听这些事件,并在触发它们时运行自己的代码。对于您的案例,最明显的可能是updated_cart_totals,但updated_wc_div也可能有帮助,如果没有测试,我不确定。测试并工作。

$( document.body ).on( 'updated_cart_totals', function(){
    //re-do your jquery
});

在用户从购物车中删除项目后,我还需要运行一个函数,而上述事件updated_cart_totalsupdated_wc_div对我不起作用。

在深入研究Wooccommerce前端代码之后

[/wp-content/plugins/woocommerce/assets/js/frontend/add-to-cart.min.js]

我发现了以下事件:

$(document.body).on('added_to_cart removed_from_cart', do_magic);

这些很有魅力!

在我的情况下,我必须添加以下内容:

jQuery(document.body).on('removed_from_cart updated_cart_totals', function () {
    location.reload();
});

因为我用js cart提交进行了大量定制

最新更新