javascript - 获取当前值输入字段数量 Woocommerce

标签 javascript php jquery woocommerce product-quantity

php中有什么方法可以获取Woocommerce输入数量的当前值?

我的意思是这个字段:

enter image description here

在本例中我需要获取 10 并输出它。 请问我该怎么做?

谢谢

最佳答案

我决定安装这个插件:https://it.wordpress.org/plugins/woo-min-max-quantity-limit/

这样我就可以获得每个产品的最小值和最大值。 我使用里面的代码:

$max = get_post_meta($product->id, '_wc_mmax_max', true);
$min = get_post_meta($product->id, '_wc_mmax_min', true);

完整代码是:

// we are going to hook this on priority 31, so that it would display below add to cart button.
add_action('woocommerce_single_product_summary', 'woocommerce_total_product_price', 31);

function woocommerce_total_product_price() {

    global $woocommerce, $product;
    $max = get_post_meta($product->id, '_wc_mmax_max', true);
    $min = get_post_meta($product->id, '_wc_mmax_min', true);

    echo sprintf('<div id="product_total_price" style="margin-bottom:20px;display:none">%s %s</div>', __('Prezzo Prodotto :', 'woocommerce'), '<span class="price">' . $product->get_price() . '</span>');
    echo sprintf('<div id="cart_total_price" style="margin-bottom:20px;display:none">%s %s</div>', __('Totale Carrello :', 'woocommerce'), '<span class="price">' . $product->get_price() . '</span>');

    $moltiplicazione_prodotto = $product->get_price() * $max;
    $moltiplicazione_prodotto = number_format($moltiplicazione_prodotto, 2, '.', '');
    echo sprintf('<div id="prodotti_quantity" style="margin-bottom:20px;">%s %s</div>', __('Prezzo Prodotto :', 'woocommerce'), '<span class="price">' . get_woocommerce_currency_symbol() . $moltiplicazione_prodotto . '</span>');
    ?>
<script>
    jQuery(function ($) {
        var price = <?php echo $product->get_price(); ?>,
                current_cart_total = <?php echo $woocommerce->cart->cart_contents_total; ?>,
                currency = '<?php echo get_woocommerce_currency_symbol(); ?>';

        var quantita_iniziale = $('[name=quantity]').val();
        $('#prodotti_quantity').html(this.value);

        console.log("quantita iniziale", this.value);

        $('[name=quantity]').change(function () {
            if (!(this.value < 1)) {

                var product_total = parseFloat(price * this.value),
                cart_total = parseFloat(product_total + current_cart_total);

                $('#product_total_price .price').html(currency + product_total.toFixed(2));
                $('#cart_total_price .price').html(currency + cart_total.toFixed(2));
                if(this.value){
                $('#prodotti_quantity').html(this.value).hide();  
                }


            }
            $('#product_total_price,#cart_total_price').toggle(!(this.value <= 1));
        });
    });
</script>
<?php
}

关于javascript - 获取当前值输入字段数量 Woocommerce,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42292865/

相关文章:

javascript - 如何使用 javascript 和 jQuery 进行复杂的替换?

jquery - 在表中使用 Ajax 链接

javascript - cursor.toArray(callback) 不返回文档数组

javascript - 在基类中分配的对象不会更改子类

php - $_SERVER 变量如何从浏览器发送到 PHP 服务器

php - HipHop for PHP 上的 apache 基准测试

php - 如何在 Laravel 中已经制作的表中添加多列?

javascript - lightgallery 无法正常工作

javascript - Jinja2:如何创建多维 javascript 数组?

javascript - 在 jQuery 中显示选中的复选框的数量