영카트 질문좀드리겠습니다.

영카트 질문좀드리겠습니다.

QA

영카트 질문좀드리겠습니다.

본문

안녕하세요 질문좀드리겠습니다.

장바구니에서요 상품 2개 넣은후 소계 금액이 나오구 그아래에 총계가격이 나오는데요

상품하나 체크박스 풀어도 총계 금액은 동일하게 2개 상품이 나오는데 

체크박스 풀면 한개 상품만 총계금액에 나오도록 할수 있는 방법없을까요 ?

이 질문에 댓글 쓰기 :

답변 2

저도 이글을 보고 오류가 있다는사실을 알게되었네요..ㅋㅋㅋ

우선 제가 한걸로 알려드리겠습니다.

 

우선 모두선택 부분에

기존

    // 모두선택
    $("input[name=ct_all]").click(function() {
        if($(this).is(":checked")){
            $("input[name^=ct_chk]").prop("checked", true); // prop
        }else{
            $("input[name^=ct_chk]").prop("checked", false); // prop
        }
    });
를 

    // 모두선택
    $("input[name=ct_all]").click(function() {
        if($(this).is(":checked")){
            $("input[name^=ct_chk]").prop("checked", true); // prop
            var send_cost_pays = "<?=$send_cost2?>";
            var tot_price_pays = "<?=$tot_price?>";
            var x_total_price = Number(tot_price_pays) + Number(send_cost_pays);
            var sod_bsk_text = "<strong>"+$.number(x_total_price)+"</strong> 원";
            var send_cost_text = "<strong>"+$.number(send_cost_pays)+"</strong> 원";
            $('#sod_bsk_pay1').html(send_cost_text);
            $('#sod_bsk_pay2').html(sod_bsk_text);
        }else{
            $("input[name^=ct_chk]").prop("checked", false); // prop
            var sod_bsk_text2 = "<strong>0</strong> 원";
            var send_cost_text2 = "<strong>0</strong> 원";
            $('#sod_bsk_pay1').html(send_cost_text2);
            $('#sod_bsk_pay2').html(sod_bsk_text2);
        }
    });
변경했구요..

전체선택 체크박스와 개별 선택박스의 기본 checked 는 삭제처리

배송비와 총계 부분 (<?php echo number_format($send_cost); ?>과 <?php echo number_format($tot_price); ?>) 모두 0 처리

스크립트 추가 <script src="/js/jquery.number.min.js"></script> 해당 js 파일은 구글에서 검색하시면 나옵니다.

form 바로 밑 부분에 <input type="hidden" name="t_price" id="t_price" value="0"> 추가

쿼리문 select 부분에 

하단 개별선택 부분 필드가져오는 부분 중 a.it_sc_price, 추가

 

개별 체크박스 부분 뒷부분에  onchange="pay_reset(this.value, '<?php echo $a; ?>', '<?php echo $sell_price; ?>');" 추가

스크립트 하단부분에 

function pay_reset(val, idx, price){
    var t_price = Number($('#t_price').val());

    //$("input:checkbox[name='aaa']").each(function(){

    if ($("#ct_chk_"+idx).is(":checked") == true){
        var tt_price = t_price + Number(price);
    }else if ($("#ct_chk_"+idx).is(":checked") == false){
        if(t_price > '0'){
            var tt_price = t_price - Number(price);
        }
    }
    $('#t_price').val(tt_price);

    if(tt_price > '0'){
        var send_cost_pays = "<?=$send_cost2?>";
        var x_total_price = tt_price + Number(send_cost_pays);
        var sod_bsk_text = "<strong>"+$.number(x_total_price)+"</strong> 원";
        var send_cost_text = "<strong>"+$.number(send_cost_pays)+"</strong> 원";
        $('#sod_bsk_pay1').html(send_cost_text);
        $('#sod_bsk_pay2').html(sod_bsk_text);
    }else{
        var sod_bsk_text2 = "<strong>0</strong> 원";
        var send_cost_text2 = "<strong>0</strong> 원";
        $('#sod_bsk_pay1').html(send_cost_text2);
        $('#sod_bsk_pay2').html(sod_bsk_text2);
    }
    
}
함수 추가했습니다.

님 친구추가해놨어요..ㅎㅎ 궁금하신건 언제든 쪽지 보내놓으시면 알려드릴게요..

덕분에 놓친 부분 잡았네요..ㅎㅎ

 

아 참고로 전 모든 배송료가 동일하다는 전제 입니다. 즉 두개를선택하든 1개를 선택하든 배송료는 가장 마지막 상품이 배송료를 들고 오게 했습니다.

https://github.com/customd/jquery-number 좌표입니다.

<script src="/js/jquery.number.min.js"></script> 이건 전 40번째 줄쯤 보면 <script src="<?php echo G5_JS_URL; ?>/shop.js"></script> 이 스크립트가 있는데 그 밑에 박아놨고 jquery.number.min.js파일은 제가 다운받아서 /js 폴더 안에 넣어놨습니다.

a.it_sc_price, 추가 라는건 // $s_cart_id 로 현재 장바구니 자료 쿼리 라는 쿼리 부분에
a.it_sc_type, 바로 위에 박았구요..ㅎㅎ

답변을 작성하시기 전에 로그인 해주세요.
전체 123,629 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT