在Woocommerce中触发check_variations事件

And*_*sen 5 javascript wordpress jquery woocommerce woothemes

我正在尝试在我的单个产品页面上为我的产品变体做出基于文本的选择.我基本上为每个变体中的每个选项生成一个p-tag,并使用javascript选择默认Woocommerce选择下拉列表中的选项.该选项被选中,但check_variations事件不会被触发.

有谁知道如何从我的主题触发check_variations事件?check_variations监听器位于woocommerce/assets/js/frontend/add-to-cart-variation.js中

JS

var ProductVariations = (function () {
    function ProductVariations() {
        this.$variationClickables = $('.variations .value p');
        this.setupClickHandlers();
    }
    ProductVariations.prototype.setupClickHandlers = function () {
        var _this = this;
        this.$variationClickables.bind('click', function (event) {
            _this.variationsClicked(event);
        });
    };

    ProductVariations.prototype.variationsClicked = function (event) {
        var $target = $(event.target);
        var targetVariation = $target.attr('value');
        $('option[value=' + targetVariation + ']', $target.closest('.variations')).attr('selected', 'true');
        $target.closest('.variations_form').trigger('change');
    };
    return ProductVariations;
})();
Run Code Online (Sandbox Code Playgroud)

小智 2

安德烈亚斯!你尝试过这个吗?

$('.variations_form').trigger('check_variations');
Run Code Online (Sandbox Code Playgroud)