Woocommerce 变体 ajax 选择不起作用

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

我创建了一个产品单页出现在弹出窗口上的功能。所以我所做的是将短代码放在我刚刚制作的弹出窗口上。要在弹出窗口上动态显示单个产品,需要创建 ajax。以下是我所做的:

PHP:

// QUICK VIEW
add_action( 'wp_ajax_nopriv_open_quick_view', 'open_quick_view' );
add_action('wp_ajax_open_quick_view', 'open_quick_view');
function open_quick_view() {
    if (isset($_REQUEST)) {
        $prodid = $_REQUEST['prodid'];
        if ($prodid) {
            echo do_shortcode("[product_page id='" . $prodid . "']");
        }
    }
    die();
}

当单击商店产品项目时,我没有重定向到单页,而是实现了preventDefault,然后以动态内容显示弹出窗口,因此如果单击的产品ID是97,那么此短代码将执行php

echo do_shortcode("[product_page id='97']");

jQuery/ajax:


    $('.products li.type-product').click(function(event){        
        event.preventDefault();
        $('.quick-view').addClass('active');
        var prodid = $(this).find('.add-to-cart-container > div .add_to_cart_button').attr('data-product_id');  
        $.ajax({
            url: my_ajax_object.ajax_url,
            data: {
              action: "open_quick_view",
              prodid: prodid,
            },           
            success: function (data) {
                $(data).appendTo('.quick-view--cont');                
            },
            error: function (errorThrown) {
              alert('error');
            },
        });         
    })

使用ajax时的问题是变体ajax不再起作用。当您选择一个变体时,价格不会出现,就像没有选择任何内容一样。

我期待变量 ajax select 仍然有效。

php jquery ajax wordpress woocommerce
1个回答
0
投票

我认为你的ajax缺少ajax变化的JS。请尝试在你的ajax中hook并应用JS of Variation。

© www.soinside.com 2019 - 2024. All rights reserved.