购物车价格合计

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6Zq-ODgz,size_20,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6Zq-ODgz,size_20,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6Zq-ODgz,size_20,color_FFFFFF,t_70,g_se,x_16

代码太多我就html上传一部分,商品内容可以复制添加,css代码我就不上传了,js有一部分代码很冗余做完后就不想优化了,大家都懂。思路:每一次点击让之前的价格清零,再从新开始算一遍。大家有更加简洁和好理解的思路和代码可以给我分享一下,谢谢。

<body>

    <!-- 第一层 -->

    <div class="commoditybar">

        <!-- 上下两部分 -->

        <div class="commodity-content">

            <!-- 商品合集 -->

            <div class="content-story">

                <!-- 商品容器 -->

                <div class="story-box">

                    <!-- 选中 -->

                    <input class="checkbox-select" type="checkbox">

                    <!-- 商品内容 -->

                    <div class="story-box-content">

                        <!-- 商品内容上 -->

                        <div class="story-box-content-top">

                            <img src="./img/baoshijie.webp" alt="">

                            <span>保时捷911</span>

                        </div>

                        <!-- 商品内容下 -->

                        <div class="story-box-content-bottom">

                            <div class="story-kinks">

                                <span>经典蓝</span><span>配置</span>

                                <div class="srory-price">

                                    <span>¥</span>

                                    <span class="srory-price-one">

                                        199.5

                                    </span>

                                    <span>

                                        /件

                                    </span>

                                    <!-- 单个商品价格合计 -->

                                    <div class="calculate-price">

                                        <input type="button" readonly value="-" class="calculate-price-lose">

                                        <span class="total-price">0</span>

                                        <input type="button" readonly value="+" class="calculate-price-add">

                                    </div>

                                </div>

                            </div>

                        </div>

                    </div>

                </div>

            </div>

           

            <div class="content-story">

                <!-- 商品容器 -->

                <div class="story-box">

                    <!-- 选中 -->

                    <input class="checkbox-select" type="checkbox">

                    <!-- 商品内容 -->

                    <div class="story-box-content">

                        <!-- 商品内容上 -->

                        <div class="story-box-content-top">

                            <img src="./img/baoshijie.webp" alt="">

                            <span>保时捷911</span>

                        </div>

                        <!-- 商品内容下 -->

                        <div class="story-box-content-bottom">

                            <div class="story-kinks">

                                <span>经典蓝</span><span>配置</span>

                                <div class="srory-price">

                                    <span>¥</span>

                                    <span class="srory-price-one">

                                        199.5

                                    </span>

                                    <span>

                                        /件

                                    </span>

                                    <!-- 单个商品价格合计 -->

                                    <div class="calculate-price">

                                        <input type="button" readonly value="-" class="calculate-price-lose">

                                        <span class="total-price">0</span>

                                        <input type="button" readonly value="+" class="calculate-price-add">

                                    </div>

                                </div>

                            </div>

                        </div>

                    </div>

                </div>

            </div>

            <div class="content-story">

                <!-- 商品容器 -->

                <div class="story-box">

                    <!-- 选中 -->

                    <input class="checkbox-select" type="checkbox">

                    <!-- 商品内容 -->

                    <div class="story-box-content">

                        <!-- 商品内容上 -->

                        <div class="story-box-content-top">

                            <img src="./img/baoshijie.webp" alt="">

                            <span>保时捷911</span>

                        </div>

                        <!-- 商品内容下 -->

                        <div class="story-box-content-bottom">

                            <div class="story-kinks">

                                <span>经典蓝</span><span>配置</span>

                                <div class="srory-price">

                                    <span>¥</span>

                                    <span class="srory-price-one">

                                        199.5

                                    </span>

                                    <span>

                                        /件

                                    </span>

                                    <!-- 单个商品价格合计 -->

                                    <div class="calculate-price">

                                        <input type="button" readonly value="-" class="calculate-price-lose">

                                        <span class="total-price">0</span>

                                        <input type="button" readonly value="+" class="calculate-price-add">

                                    </div>

                                </div>

                            </div>

                        </div>

                    </div>

                </div>

            </div>

        </div>

        <!-- 商品总结价格 -->

        <div class="connodity-totil">

            <!-- 商品价格合计 -->

            <div class="connondity-total-picre">

                <div class="connondity-total-picre-left">

                    <input type="checkbox" class="select-all">

                    <span>全选</span>

                    <p>注:商品半年内保修</p>

                </div>

                <div class="connondity-total-picre-right">

                    <span>合计:¥</span><span class="total-allprice">0</span><span class="add-count">结算(0)</span>

                </div>

            </div>

        </div>

        <div class="twoweb">

            <div>

                <div class="twoweb-top">

                    <p>选择支付方式</p>

                    <div><img src="./img/weixinzhifu.png" alt=""><span>微信支付</span><img class="imgclick" src="./img/selecty.png" alt=""></div>

                    <div><img src="./img/zfb.png" alt=""><span>支付宝支付</span><img class="imgclick" src="./img/selectnwhite.png" alt=""></div>

                </div>

                <div class="twoweb-bootom">

                    <span class="divhidden">确定</span><div></div><span class="divhidden">取消</span>

                </div>

            </div>

        </div>

    </div>

</body>

//js部分

var oInput = document.getElementsByClassName("select-all")[0]

var aInput = document.getElementsByClassName("checkbox-select")

var aDid = document.getElementsByClassName("calculate-price")

var aDiv = document.getElementsByClassName("srory-price")

var aDiva = document.getElementsByClassName("content-story")

var span7 = document.getElementsByClassName("total-allprice")[0]

var imgclick = document.getElementsByClassName("imgclick")

var hidden = document.getElementsByClassName("divhidden")

var odiv2 = document.getElementsByClassName("twoweb")[0]

var arr1 = []

var arr2 = []

for (i = 0; i < aDiva.length; i++) {

    arr1.push(aDiva[i].getElementsByClassName("calculate-price"))

    arr2.push(aDiva[i].getElementsByClassName("srory-price"))

}

// var oSpan1 = aDiv.getElementsByClassName("srory-price-one")

var sSpan3 = document.getElementsByClassName("add-count")[0]

var countTatal = 0;

var priceTatal = 0;

// console.log(arr2)

oInput.onclick = function () {

    for (let i = 0; i < aInput.length; i++) {

        aInput[i].checked = oInput.checked

    }

    for (i = 0; i < aInput.length; i++) {

        countTatal = 0

        priceTatal = 0

        for (let j = 0; j < arr1.length; j++) {

            if (aInput[j].checked) {

                for (let g = 0; g < arr1[j].length; g++) {

                    var span4 = arr1[j][g].getElementsByClassName("total-price")[0]

                    var span5 = arr2[j][g].getElementsByClassName("srory-price-one")[0]

                    countTatal += parseFloat(span4.innerHTML)

                    priceTatal += parseFloat(span4.innerHTML) * parseFloat(span5.innerHTML)

                    sSpan3.innerHTML = "结算(" + countTatal + ")"

                    span7.innerHTML = priceTatal

                    // console.log(priceTatal)

                }

            }

            if (oInput.checked == false) {

                countTatal = 0

                sSpan3.innerHTML = "结算(" + countTatal + ")"

                priceTatal = 0

                span7.innerHTML = 0

            }

        }

    }

}

sSpan3.οnclick=function(){

    odiv2.style.display = "block"

}

function aClick(a) {

    var two = a.getElementsByClassName("calculate-price")

    // var aSpan2 = a.getElementsByClassName("calculate-price")

    for (k = 0; k < two.length; k++) {

        bclick(two[k])

    }

    function bclick(b) {

        var count = 0;

        var oLose = b.getElementsByClassName("calculate-price-lose")[0]

        var oAdd = b.getElementsByClassName("calculate-price-add")[0]

        var oSpan = b.getElementsByClassName("total-price")[0]

        var aInput = document.getElementsByClassName("checkbox-select")

        oAdd.onclick = function () {

            // console.log("jia")

            count++

            oSpan.innerHTML = count

            for (i = 0; i < aInput.length; i++) {

                countTatal = 0

                priceTatal = 0

                for (let j = 0; j < arr1.length; j++) {

                    if (aInput[j].checked) {

                        for (let g = 0; g < arr1[j].length; g++) {

                            var span5 = arr2[j][g].getElementsByClassName("srory-price-one")[0]

                            var span4 = arr1[j][g].getElementsByClassName("total-price")[0]

                            countTatal += parseFloat(span4.innerHTML)

                            priceTatal += parseFloat(span4.innerHTML) * parseFloat(span5.innerHTML)

                            span7.innerHTML = priceTatal

                            sSpan3.innerHTML = "结算(" + countTatal + ")"

                            // console.log(countTatal)

                        }

                    }

                }

            }

        }

        oLose.onclick = function () {

            // console.log("jian")

            count--

            if (count <= 0) {

                count = 0

                oSpan.innerHTML = count

            } else {

                oSpan.innerHTML = count

            }

            for (i = 0; i < aInput.length; i++) {

                countTatal = 0

                priceTatal = 0

                for (let j = 0; j < arr1.length; j++) {

                    if (aInput[j].checked) {

                        for (let g = 0; g < arr1[j].length; g++) {

                            var span5 = arr2[j][g].getElementsByClassName("srory-price-one")[0]

                            var span4 = arr1[j][g].getElementsByClassName("total-price")[0]

                            countTatal += parseFloat(span4.innerHTML)

                            priceTatal += parseFloat(span4.innerHTML) * parseFloat(span5.innerHTML)

                            span7.innerHTML = priceTatal

                            sSpan3.innerHTML = "结算(" + countTatal + ")"

                            // console.log(countTatal)

                        }

                    }

                }

            }

        }

    }

}

for (let i = 0; i < aInput.length; i++) {

    aClick(aDiva[i])

    aInput[i].onclick = function () {

        for (let i = 0; i < aInput.length; i++) {

            countTatal = 0

            priceTatal = 0

            for (let j = 0; j < arr1.length; j++) {

                if (aInput[j].checked) {

                    for (let g = 0; g < arr1[j].length; g++) {

                        var span5 = arr2[j][g].getElementsByClassName("srory-price-one")[0]

                        var span4 = arr1[j][g].getElementsByClassName("total-price")[0]

                        countTatal += parseFloat(span4.innerHTML)

                        priceTatal += parseFloat(span4.innerHTML) * parseFloat(span5.innerHTML)

                        span7.innerHTML = priceTatal

                        sSpan3.innerHTML = "结算(" + countTatal + ")"

                        // console.log(countTatal)

                    }

                }

            }

        }

    }

}

var oldimg = ""

for(i=0;i<imgclick.length;i++){

   

      imgclick[i].οnclick=function(){

          imgclick[0].src = "./img/selectnwhite.png"

          oldimg.src = "./img/selectnwhite.png"

          oldimg=this

          this.src = "./img/selecty.png"

      }

      hidden[i].οnclick=function(){

           odiv2.style.display = "none"

      }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值