2014-05-23 39 views
-1

所以基本上我试图做的是写一个我的网站的购物车,我有一个下拉车和一个结帐都使用相同的类i.ex.数量为.quantity,价格为.pricejQuery与另一个值相冲突

我试图重写代码以使用<select><option>,但它与下拉菜单发生冲突,它正在从结帐中读取数量,并在下拉菜单中将upp的数量增加了两倍。

所以我想知道的是如何在不改变类的情况下分离jQuerys。不知道这是否是基本知识,但我很累,并尝试了一下。

$(document).ready(function() { 
    $('.quantity :selected').change(function (event) { 
     $quan = $(this); 
     console.log($quan.parent().next()[0]); 
     $quan.parent().next().find('.price').text(function() { 
      return $quan.val() * parseInt($(this).attr('data-val'), 10) + ' kr'; 
     }); 
      var total = 0; 
      $('.price').each(function(k, v){ 
       total += parseFloat($(v).text(), 10); 
      }); 
      $('#total').text(total + ' kr') 
    }); 
}); 

代码由Spokey编写。


新:更新成jsFiddleHTMLjQuery

回答

1

你需要与在结帐显示的项目列表的父母而不是在车中的商品的父元素,如锚您.price选择:我有

$('#checkout .price').each(...) 
+0

在结帐时出现一些代码问题,这些值不起作用。 $总数不会更新,数量+价格。 http://jsfiddle.net/tweath/G4YcG/ @Alnitak – Tweath