총금액 부분이 이상합니다
본문
총금액 계산하는부분이
shop.js 432라인의 price_calculate() 부분 과 shop.override.js 130라인부분이네요
상품가격 100원
옵션 1가격 10원
옵션2 가격 20원일때
옵션을 선택 할때 마다 shop.override.js 의 130라인 부분이 불러집니다
if( $(".2017_renewal_itemform").length ){
var it_price = $("input#it_price").val() * 1;
if(isNaN(it_price))
return;
var $el_prc = $("input.io_price");
var $el_qty = $("input[name^=ct_qty]");
var $el_type = $("input[name^=io_type]");
var price, type, qty, total = 0;
$el_prc.each(function(index) {
price = $(this).val() * 1;
qty = $el_qty.eq(index).val() * 1;
type = $el_type.eq(index).val();
if(type == "0") { // 선택옵션
total += (it_price + price) * qty; //이부분욤<<<<
} else { // 추가옵션
total += price * qty;
}
});
$("#sit_tot_price").empty().html("<span>Total Amount </span><strong>$" + total.toFixed(2) +"</strong>");
//$("#sit_tot_price").empty().html("<span>Total Amount </span><strong>$"+number_format(String(total))+"</strong>");
} else {
cached_function.apply(this, arguments); // use .apply() to call it
}
$el_prc.each(function(index) 이부분에서 옵션이 선택된 만큼 루프돌면서
총급액을 계산하는데....뭔가 이상합니다
1. 100원상품에 10원옵션 선택 하면 110원 맞게 나옵니다
2. 100원 상품에 10원 선택후 20원 선택하면 130원 이 아니라 금액이 배로 뻥튀기됩니다
total += (it_price + price) <<이부분욤 아이템가격이 계속 더해짐...
보면 루프돌면서 아이템가격과 옵션가격을 더해줍니다....
해서 total += price * qty; 옵션과 수량만 total에더해두고
루프밖에서 total +=it_price해주면 맞게는 나옵니다
뭔가 미심쩍네요 ㅠㅠ
질문내용
1. 다른곳에 잘쓰는 영카트가 하루이틀 된거도 아니구 이런적이 없었데 옵션을 잘못준걸까요?
옵션1 MODEL 옵션항목 M2020,M3020,M3020-S180,M5020-K,M5020-S180,M5040-K
3. sho.js 의 price_calculate()함수는 언제 콜되나요?
부탁드림니다
!-->
답변 1
질문 내용에서 이해가 안되는 내용이 있습니다.
1. 100원상품에 10원옵션 선택 하면 110원 맞게 나옵니다
2. 100원 상품에 10원 선택후 20원 선택하면 130원 이 아니라 금액이 배로 뻥튀기됩니다
2번을 실행할 경우에
110 + 120 = 230
230 원이 되어야 맞습니다.