2014-05-23 4 views
-1

기본적으로 내가하려는 것은 내 웹 사이트의 카트입니다. 드롭 다운 카트가 있으며 체크 아웃은 모두 동일한 클래스 i.ex를 사용합니다. 수량은 .quantity이고 가격은 .price입니다.jQuery가 다른 값과 충돌합니다.

<select><option>과 함께 작동하는 코드를 다시 작성하려고했지만 드롭 다운 메뉴와 충돌합니다. 계산대에서 수량을 읽고 드롭 다운에 upp를 두 번 더합니다.

그래서 궁금한 점은 클래스를 변경하지 않고 jQuerys를 분리하는 방법입니다. 이것이 기본 지식인지 확실하지 않지만 꽤 피곤해서 조금만 노력했습니다. Spokey에 의해 작성

$(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') 
    }); 
}); 

코드입니다. NEW


:HTMLjQueryjsFiddle으로 업데이트되었습니다.

답변

1
당신은 체크 아웃에 표시된 항목 목록의 부모가 아닌 카트에있는 항목의 부모 인 요소, 예를 들어, 당신의 .price 선택기를 고정 할 필요가

:

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

나는 데 체크 아웃의 코드에 문제가 있으면 값이 작동하지 않습니다. $ total은 업데이트되지 않으며 quantity + price는 업데이트되지 않습니다. http://jsfiddle.net/tweath/G4YcG/ @Alnitak – Tweath

관련 문제