用于从ajax中删除产品的Jquery触发器

用于从ajax中删除产品的Jquery触发器,jquery,wordpress,woocommerce,Jquery,Wordpress,Woocommerce,希望在woocommerce中将产品从购物车中删除时运行一些jQuery。我原以为这样就行了,但事实并非如此 有什么想法吗 jQuery( document.body ).on( 'updated_wc_div', function(){ //magic }); 您可以使用以下代码从购物车中删除产品: main.js $.ajax({ type: "POST", url: 'http://localhost/your_site/wp-admin/admin-ajax.php'

希望在woocommerce中将产品从购物车中删除时运行一些jQuery。我原以为这样就行了,但事实并非如此

有什么想法吗

jQuery( document.body ).on( 'updated_wc_div', function(){
//magic
});

您可以使用以下代码从购物车中删除产品:

main.js

 $.ajax({
    type: "POST",
    url: 'http://localhost/your_site/wp-admin/admin-ajax.php',
    data: {action : 'remove_item_from_cart','product_id' : '4'},
    success: function (res) {
        if (res) {
            alert('Removed Successfully');
        }
    }
});
functions.php

function remove_item_from_cart() {
$cart = WC()->instance()->cart;
$id = $_POST['product_id'];
$cart_id = $cart->generate_cart_id($id);
$cart_item_id = $cart->find_product_in_cart($cart_id);

if($cart_item_id){
   $cart->set_quantity($cart_item_id, 0);
   return true;
} 
return false;
}

add_action('wp_ajax_remove_item_from_cart', 'remove_item_from_cart');
add_action('wp_ajax_nopriv_remove_item_from_cart', 'remove_item_from_cart');

您可以使用以下代码从购物车中删除产品:

main.js

 $.ajax({
    type: "POST",
    url: 'http://localhost/your_site/wp-admin/admin-ajax.php',
    data: {action : 'remove_item_from_cart','product_id' : '4'},
    success: function (res) {
        if (res) {
            alert('Removed Successfully');
        }
    }
});
functions.php

function remove_item_from_cart() {
$cart = WC()->instance()->cart;
$id = $_POST['product_id'];
$cart_id = $cart->generate_cart_id($id);
$cart_item_id = $cart->find_product_in_cart($cart_id);

if($cart_item_id){
   $cart->set_quantity($cart_item_id, 0);
   return true;
} 
return false;
}

add_action('wp_ajax_remove_item_from_cart', 'remove_item_from_cart');
add_action('wp_ajax_nopriv_remove_item_from_cart', 'remove_item_from_cart');

当购物车更新时,也会触发
更新的购物车\u总计
事件。因此,您可以使用以下解决方法,因为更新购物车时不会触发任何全局事件:

jQuery( document.body ).on( 'updated_wc_div', do_magic );
jQuery( document.body ).on( 'updated_cart_totals', do_magic );

function do_magic() {
    // do magic
}

当购物车更新时,也会触发
更新的购物车\u总计
事件。因此,您可以使用以下解决方法,因为更新购物车时不会触发任何全局事件:

jQuery( document.body ).on( 'updated_wc_div', do_magic );
jQuery( document.body ).on( 'updated_cart_totals', do_magic );

function do_magic() {
    // do magic
}
问题是在从购物车中删除任何项目时触发jQuery操作,而不是如何从购物车中删除项目。问题是在从购物车中删除任何项目时触发jQuery操作,而不是如何从购物车中删除项目。可能的重复可能是