首页 文章

如何在woocommerce ajax add_to_cart之后运行我的自定义ajax?

提问于
浏览
2

单击add_to_cart后,我创建了一个ajax文件句柄 . 但我的问题是我的ajax文件总是在woocommerce文件之前运行(就像我的图片) . 如何在woocommerce ajax add_to_cart之后运行我的自定义ajax?

enter image description here

2 回答

  • 1

    所以我意识到这篇文章已经老了,但我遇到了同样的问题 . 我使用setTimeout将ajax请求延迟500ms

    jQuery(document).ready(function($) {
    console.log('ajax-minicart.js loaded');
    // What event do we want our AJAX to fire on? ADDING A PRODUCT TO CART.
    $('.ajax_add_to_cart').on('click', function () {
        // Fix
        setTimeout( function () {
            console.log('clicked');
    
            // What data do we need to send? URL TO AJAX, ACTIONS
            $.post(my_ajax_obj.ajax_url, {
                _ajax_nonce: my_ajax_obj.nonce,
                action: 'update_minicart',
            }, function(response) {
                // What do we want to do with response? REFRESH CART
                console.log(response);
                $('.cart-container').html(response);
            });     
        }, 500);
    });
    

    });

    我不确定此修复程序的稳定性或面向未来但它现在可以正常工作 . 我很欣赏有关为什么会发生这种情况的任何信息 .

  • 0

    不过这不是一个好习惯,你可以试试下面的代码:

    $('.add_to_cart_button').on('click',function(){
        /** write your code here **/            
    });
    

    希望这可以帮助

相关问题