【问题标题】:Auto update cart on quantity change in Woocommerce cart page在 Woocommerce 购物车页面中自动更新购物车数量变化
【发布时间】:2018-07-05 04:54:25
【问题描述】:

使用“货到付款”时,我会在订单总额中添加 5 美元的费用。切换到“银行转帐”时应取消此费用。当我通过更改帐单邮政编码触发订单审核表进行更新时,这笔费用就会被删除。但我还需要在选择不同的支付网关时触发它。

这是我当前的代码:

<script>
    $('#payment_method_bacs').on('click', function() {
    $( 'body' ).trigger( 'update_checkout' );})
</script>

有什么想法吗?

【问题讨论】:

    标签: php jquery wordpress woocommerce


    【解决方案1】:

    由于结账的这部分(支付方式)是在后台更新的,所以应该将点击绑定到“body”如:

    jQuery(document).ready(function(){
        jQuery('body').on('click', 'ul.payment_methods li', function(){
                console.log('payment method clicked');
        });
    });
    

    (未经测试!)

    【讨论】:

      【解决方案2】:

      您可以按照此通过 AJAX 更新购物车。这是link

      jQuery(function( $ ) {
          $( "form.checkout" ).on( "click", "input.qty", function( e ) {//modify this to payment gateway radio button selection
            var data = {
            action: 'update_order_review',
            security: wc_checkout_params.update_order_review_nonce,
            post_data: $( 'form.checkout' ).serialize()
          };
      
          jQuery.post( add_quantity.ajax_url, data, function( response )
          {
            $( 'body' ).trigger( 'update_checkout' );
          });
        });
      });
      

      在上面的代码中,而不是数量更新,只需添加您的付款网关单选按钮选择的更改事件

      【讨论】:

      • 你想让它在订单审查表上工作吗,然后有一些变化
      • 我已经更新了我的答案,请参考上面的链接
      • @BrennanWalsh。首先检查那个错误,为什么 jQuery 不工作。上面的链接是最好和标准的方法
      【解决方案3】:

      只是为了让这个问题对以后阅读这里的任何人都有用.. 这是最终为我工作的脚本。我从helpful guide 在这里找到了答案。

          jQuery('div.woocommerce').on('click', 'input.qty', function(){ 
      
              jQuery("[name='update_cart']").trigger("click");
      
          }); 
      

      【讨论】:

        猜你喜欢
        • 2019-10-08
        • 2021-04-19
        • 2021-01-31
        • 2020-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-30
        • 1970-01-01
        相关资源
        最近更新 更多