woocommerce购物车无法正常使用jquery

问题描述:

它是我第一次使用woocommerce,当我添加超过1种产品并增加或减少任何产品时,我在购物车页面上出现了一些问题,它会增加所有数量产品。woocommerce购物车无法正常使用jquery

例如:我已经添加产物带数量2和产品B与量7

如果我增加产品b键8然后产物的量也将增加至8

代码:

<script> 
jQuery('.plus').on('click',function(e){ 
var val = parseInt(jQuery('input[title="Qty"]').val()); 

jQuery('input[title="Qty"]').val(val+1); 
}); 

jQuery('.minus').on('click',function(e){ 
var val = parseInt(jQuery('input[title="Qty"]').val()); 
if(val !== 0){ 

jQuery('input[title="Qty"]').val(val-1); 
} }); 
</script> 

还有一种件事价格保持不变,即使我想补充的产品增加或减少

HTML输出:goo.gl/h3w4IQ

实际购物车页面:goo.gl/9ynStK

请让我知道为什么这个jQuery代码不工作,如何做才能增加/减少价格也按照产品的数量。

在你的jQuery代码中,你选择了所有的DOM input,同时做正负。您实际上需要一个特定的选择器才能更改相邻输入的值。请用你的代码替换这个。我已经测试过它,它工作。

jQuery(document).ready(function($) { 
    // Attach event on plus 
    // We delegate the event to document 
    // So that even if there are 100 of plus buttons 
    // It would not slow down the page 
    $(document).on('click', '.plus', function(e) { 
     // Get the right element 
     var elem = $(this).prev('.qty'), 
     // and its value 
     val = parseInt(elem.val()); 
     // Sanitize the value 
     if (isNaN(val)) { 
      val = 0; 
     } 
     if (val < 0) { 
      val = 0; 
     } 
     // Now increase it 
     elem.val(++val).trigger('change'); 
    }); 

    // Similar appraoch for the minus button 
    $(document).on('click', '.minus', function(e) { 
     // Get the right element 
     var elem = $(this).next('.qty'), 
     val = parseInt(elem.val()); 
     // Sanitize the value 
     if (isNaN(val)) { 
      val = 0; 
     } 
     // decrease the value 
     val = val - 1; 
     // but not a negative 
     if (val < 0) { 
      val = 0; 
     } 
     // Set it 
     elem.val(val).trigger('change'); 
    }); 
}); 
+1

冷却它的工作原理,但仍然对价格并不增加/本 –

+0

那么这是超出了我可以提供,因为我觉得需要去服务器计算所有的价格下降。也许别人可以帮助你。但根据我的经验,当您在购物车中增加产品数量时,请要求用户更新它,或者通过ajax调用来从服务器更新它。 –

+0

以及它真的很好的帮助,谢谢:) btw你知道如何在用户增加数量时调用ajax来更新购物车吗? –