用html做一个购物车,能实现简单的产品数量和价格的加减就行。最后能计算出提交物品价格的总和。

用html做一个购物车,能实现简单的产品数量和价格的加减就行。最后能计算出提交物品价格的总和。,第1张

html中的购物车的增减不能直接传送到后台,可以通过ajax,在js中发送ajax

纯前端的话可以参考下面的

<!DOCTYPE html>    

<html lang="en">    

<head>    

<meta charset="UTF-8">    

<title>cart</title>    

<style type="text/css">

    body,p,a,input{

    margin: 0;

    padding: 0;

    font-size: 12px;

}

container{

    width: 100%;

}

main{

    width: 1000px;

    height: 500px;

    margin:100px auto;

}

main cart-container table{

    width: 100%;

}

main cart-container table tr{

    text-align: center;

}

main cart-container table tr:hover{

    background: rgba(128, 128, 128, 02);

}

main cart-container table table-header{

    height: 30px;

    background: #d9d9d9;

    font-size: 12em;

}

main cart-container table table-header td:first-child{

    border-left: solid 4px red;

    box-sizing: border-box;

}

main cart-container table tr td:nth-child(1),

main cart-container table tr td:nth-child(2){

    text-align: left;

}

main cart-container table tr td:nth-child(2){

    width: 52%;

}

main cart-container table tr td:nth-child(3){

    width: 12%;

}

main cart-container table tr td:nth-child(4){

    width: 12%;

}

main cart-container table tr td:nth-child(5){

    width: 12%;

}

main cart-container table tr td:last-child{

    width: 10%;

}

cart-good{

    height: 60px;

}

cart-good img{

    float: left;

    margin: 10px;

    width: 60px;

}

cart-good td p{

    margin: 10px 0px;

}

/加、减按钮/

cart-good td input[type='button']{

     width: 20px;

     height: 20px;

     background: #00f300;

     outline: none;

     border: none;

 }

cart-good td input[type='button']:disabled{

    background: grey;

}

cart-good td input[type='button']:first-child{

   margin-right: -4px;

}

cart-good td input[type='button']:last-child{

    margin-left: -4px;

}

cart-good td input[type='text']{

    width: 30px;

    height: 20px;

    outline: none;

    border: none;

    text-align: center;

}

table-footer{

    display: flex;

    justify-content: space-between;

    line-height: 40px;

}

table-footer div{

    font-size: 12em;

}

table-footer div button{

    background: red;

    width: 120px;

    height: 40px;

    color: white;

}

</style>  

</head>    

<body>    

<div class="container">    

<header></header>    

<section class="main">    

<div class="cart-container">    

<table cellspacing="0">    

<tr class="table-header">    

<td><input type="checkbox" id="chk_alla"></td>    

<td>聚美优品发货</td>    

<td>聚美价</td>    

<td>数量</td>    

<td>小计</td>    

<td>操作</td>    

</tr>    

<!--<tr class="cart-good">-->    

<!--<td><input type="checkbox" id="001"></td>-->    

<!--<td>-->    

<!--<img src="https://p2jmstaticcom/product/001/293/1293263_std/1293263_60_60jpg" alt="">-->    

<!--<p>[极速免税]PITTA MASK 口罩3枚入</p>-->    

<!--<p>型号:新版防晒款  容量:3枚入</p>-->    

<!--</td>-->    

<!--<td>8900</td>-->    

<!--<td>-->    

<!--<input type="button" value="-">-->    

<!--<input type="text" value="1">-->    

<!--<input type="button" value="+">-->    

<!--</td>-->    

<!--<td>8900</td>-->    

<!--<td><a href="#">删除</a></td>-->    

<!--</tr>-->    

</table>    

<div class="table-footer">    

<div>    

<input type="checkbox" id="chk_allb"> <label for="chk_allb">全选</label>    

<span style="margin-left: 20px">继续购物 | 清空选中商品</span>    

</div>    

<div>    

共 <span id="good_count">5</span>件商品    商品应付总额:<span id="goods_total">¥22900</span>    

<button class="btn_menu">去结算</button>    

</div>    

</div>    

</div>    

</section>    

</div>    

<script>

(function () {

    var skin_products= [

        {

            "id":"002",

            "title": "Estee Lauder 多效智妍精华霜15ml",

            "img_url": "http://p0jmstaticcom/product/003/565/3565880_std/3565880_350_350jpg",

            "price": 2490,

            "number":6,

            "acount": "520",

            "ischecked":true

        },

        {

            "id":"004",

            "title": "EsteeLauder 肌透修护洁面乳30ml",

            "img_url": "http://p4jmstaticcom/product/003/155/3155764_std/3155764_350_350jpg",

            "price": 499,

            "number":1,

            "acount": "5911",

            "ischecked":false

        },

        {

            "id":"008",

            "title": "雅诗兰黛无痕持妆粉底液",

            "img_url": "http://p3jmstaticcom/product/003/662/3662318_std/3662318_350_350jpg",

            "price": 699,

            "number":2,

            "acount": "3972",

            "ischecked":true

        },

        {

            "id":"0012",

            "title": "Estee Lauder 肌初赋活原生液30ml",

            "img_url": "http://p4jmstaticcom/product/003/565/3565914_std/3565914_350_350jpg",

            "price": 1590,

            "number":1,

            "acount": "2338"

        },

        {

            "id":"001",

            "title": "雅诗兰黛无痕持妆粉底液30ml",

            "img_url": "http://p2jmstaticcom/product/001/648/1648502_std/1648502_350_350jpg",

            "price": 2980,

            "number":4,

            "acount": "5071",

            "ischecked":false

        },

        {

            "id":"009",

            "title": "雅诗兰黛眼部精华霜15ml",

            "img_url": "http://p1jmstaticcom/product/001/049/1049746_std/1049746_350_350jpg",

            "price": 3990,

            "number":1,

            "acount": "4022",

            "ischecked":false

        }

    ]

//    添加商品

    function load() {

        var tbody=documentquerySelector('cart-container table tbody');

        for(let good of skin_products){

            tbodyinnerHTML+=` <tr class="cart-good" id="${goodid}">

                            <td><input type="checkbox" class="good-check" ${goodischecked"checked":''}></td>

                            <td>

                                <img src="${goodimg_url}" alt="">

                                <p>[极速免税]PITTA MASK 口罩3枚入</p>

                                <p>型号:新版防晒款  容量:3枚入</p>

                            </td>

                            <td>${goodprice}</td>

                            <td>

                                <input type="button" value="-"  ${goodnumber<=1"disabled":''}>

                                <input type="text" value="${goodnumber}">

                                <input type="button" value="+">

                            </td>

                            <td>${goodpricegoodnumber}</td>

                            <td><a href="#">删除</a></td>

                        </tr>`

        }

        totalAcount();

    }

    load();

//    end all

    // 1 为table注册单击事件

    var table01=documentquerySelector('cart-container table');

    table01onclick=function (event) {

        var node=eventtarget

        if(nodegetAttribute('type')=='button'){

            // alert(eventtargetvalue);

            changeNumber(event);

            subtotal(event);

            checkedRow(event);

            checkedAllRows();

        }else if(nodeclassName=='good-check'){

            checkedAllRows();

        }else if(nodeid=='chk_alla'){

            var f=eventtargetchecked;

            var chks=documentquerySelectorAll('good-check');

            for(var ck of chks){

                ckchecked=f;

            }

            for(var good of skin_products){

                goodischecked=f;

            }

        }else if(nodenodeNametoLowerCase()=='a'){

            var tr=eventtargetparentNodeparentNode;

            for(var i=0;i<skin_productslength;i++){

                if(skin_products[i]id==trid){

                    skin_productssplice(i,1);

                    consolelog(skin_products);

                }

            }

            trparentNoderemoveChild(tr);

        }

        totalAcount();

    };

    //单击增加或减少按钮的方法

    function changeNumber(event) {

        var node=event && eventtarget;

        var v=0;

        if(nodevalue && nodevalue=='+'){

            // nodepreviousElementSiblingvalue=parseInt(nodepreviousElementSiblingvalue)+1;

            nodepreviousElementSiblingvalue++;

            v=nodepreviousElementSiblingvalue;

            nodepreviousElementSiblingpreviousElementSiblingdisabled=false;

        }else{

            // if(nodevalue && nodevalue=='+')

            if(nodenextElementSiblingvalue>1){

                nodenextElementSiblingvalue--;

                v=nodenextElementSiblingvalue;

                if(v==1){

                    nodedisabled=true;

                }

            }

        }

    //    存储商品数量

        var id=nodeparentNodeparentNodeid;

        for(var good of skin_products){

            if(id==goodid){

                goodnumber=v;

            }

        }

    }

    

//    每个商品小计的方法

    

    function subtotal(event) {

        var node=event && eventtarget;

        // var id=nodeparentNodeparentNodeid;

        // for(var g of skin_products){

        //     if(gid==id){

        //         alert(gprice);

        //     }

        // }

        // var price=;

        var price=nodeparentNodepreviousElementSiblinginnerText;

        var num=nodeparentNodechildren[1]value;

        nodeparentNodenextElementSiblinginnerText=(numprice)toFixed(2);

    }

//    检验该商品是否选中

    function checkedRow(event) {

        eventtargetparentNodeparentNodefirstElementChildfirstElementChildchecked=true;

        // eventtargetparentNodeparentNodecells[0]firstElementChildchecked=true;

        // var tbody=eventtargetparentNodeparentNodeparentNode;

        // eventtargetparentNodeparentNodeparentNoderows[3]cells[0]firstElementChildchecked=true;

    }

//   检查是否全选

    function checkedAllRows() {

        var chks=documentquerySelectorAll('good-check');

        var flag=true;

        for(var ck of chks){

            if(!ckchecked){

                flag=false;

                break;

            }

        }

        documentquerySelector('#chk_alla')checked=flag;

    }

//    统计商品总量和总价格

    function totalAcount() {

        var total=0;

        var total_price=0;

        var chks=documentquerySelectorAll('good-check');

        for(var ck of chks){

            if(ckchecked){

                id=ckparentNodeparentNodeid;

                for(var good of skin_products){

                    if(id==goodid){

                        total+=~~goodnumber;

                        total_price=total_price+(goodnumbergoodprice);

                        goodischecked=true;

                    }

                }

            }

        }

        documentquerySelector('#good_count')innerText=total;

        documentquerySelector('#goods_total')innerText=total_price;

    }

})();

</script>    

</body>    

</html>

m1 age > m2 age -1 : m1 age < m2 age 1: 0 ;

这是一个三元表达式语句,一般用于赋值,返回值

三元表达设格式为: 条件A 结果B : 结果 C

如果条件A 为真,则这个表达式结果为B,否则为C

即 m1 age > m2 age 为真,则该表达式结果为 -1;否则为后面的三元表达式的结果 m1 age < m2 age 1: 0,后面的表达式 m1 age < m2 age 为真,结果为1:否则为0;

合并起来就是:

m1age >m2age 返回 -1;

m1age = m2age 返回 0

m1age < m2age 返回 -1

EMINENCE ORGANIC这个牌子,在我博里的出镜率还算挺高的。

面膜、面霜、精华、眼磨砂,到花草茶和身体油,我都用过,总的来说还都算挺满意的。

今天来介绍的是这个eight greens系列里的精华和面霜,香港翻译成复合草本,也是很贴切的。

顾名思义eight greens,就是内含8种植物,其主要功效是抗老的。

植物类的抗老产品,作用肯定不会在短时间内显现出来,不过作为初期预防,还是很不错的,胜在温和。

这个系列是去年在eds买的礼盒,精华是正装的30ml,面霜、洁面、去角质和面膜都是15ml

2010-03-2719:41:08

by ceci

护肤 Eminence Organic — eight greens youth 精华&面霜

EMINENCE ORGANIC这个牌子,在我博里的出镜率还算挺高的。

面膜、面霜、精华、眼磨砂,到花草茶和身体油,我都用过,总的来说还都算挺满意的。

今天来介绍的是这个eight greens系列里的精华和面霜,香港翻译成复合草本,也是很贴切的。

顾名思义eight greens,就是内含8种植物,其主要功效是抗老的。

植物类的抗老产品,作用肯定不会在短时间内显现出来,不过作为初期预防,还是很不错的,胜在温和。

这个系列是去年在eds买的礼盒,精华是正装的30ml,面霜、洁面、去角质和面膜都是15ml的。

先来说说精华,因为超爱它家的抗敏精华(看这里),所以对这瓶精华也报以较高的期望。

它家的精华包装都是一个样子的,里面是吸管式的。质地也都是gel状的,颜色则是挺清爽的绿色。

至于味道,刚闻时很植物,很天然,在脸上涂开,不知道为啥就有点臭臭的了……

吸收不错,感觉也没有抗敏精华黏,属于比较清爽的,所以用量也不算少,消耗也挺快的,30ml大概也就是一个月多几天的样子。

可惜效果就不及抗敏精华明显了,基本上属于没看出任何效果。

抗老目前虽不是很急需,主要还是希望保湿和令皮肤状态比较稳定,快把这瓶用光光了,也没感受到任何觉得不错的地方……

再来说说这个面霜。

味道和精华差不多,颜色也是绿绿的很舒服。

看着质地并不厚,可是上脸后却不太好推,明显觉得有阻力。而且还比较黏,浮在皮肤上一层粘膜,吸收的也不好。

总的来说,比起抗敏系列,抗老系列真是让我有点失望,虽然不至于不好用,但是毕竟珠玉在前,一比就比出差距了,所以如果有MM想要入手eminence的产品,还是直接选择抗敏系列的吧。

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/meirong/2174735.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-11-15
下一篇2023-11-15

随机推荐

  • 泰国防晒霜哪个牌子的防晒效果好

    瑞士HT防晒关于泰国的防晒霜能不能给我推荐几款我用过香蕉防晒去泰国留学,买那种防晒霜?什么牌子的比较好?我在泰国呆过三个月,我妈去过一年,那边虽然在热带,但太阳没有想象中的大,阴天挺多的。那边潮_才是最重要的。尤其是雨季。因为出门基本都要带

    2024-04-15
    59000
  • 婴儿护肤品

    「导读」 宝宝也是可以使用护肤品的,只是在产品的选择上需要更加的谨慎而已,需要保护好宝宝皮肤表面的酸性保护膜并且保持宝宝皮肤的水分平衡。婴儿护肤品是指专门针对婴幼儿敏感肌肤研制,用于婴幼儿日常清洁、保护肌肤、预防溼疹、预防痱子等护理的产品。

    2024-04-15
    62700
  • 国产护肤品谷雨真的好用吗?,,

    挺好用的。水看起来里面有水珠,上手试了一下,出来的液体并没有我想象的黏,因为大家说很油腻很稠,我以为会是那种啫喱感,但是并没有,自我感觉很清爽不油腻,涂开之后完全就是水,很快就吸收了味道呢,刚打开瓶盖是那种植物的清香,还有点像芦荟的味道,但

    2024-04-15
    50800
  • 在俄罗斯怎么买gucci

    如果你想在俄罗斯买 GUCCI 包包,你可以通过以下几种方式来实现:1前往俄罗斯的 GUCCI 官方旗舰店购买。俄罗斯有多个 GUCCI 官方旗舰店,位于莫斯科、圣彼得堡和其他城市。你可以前往这些店铺,选择你喜欢的包包,并直接购买。2通过俄

    2024-04-15
    47000
  • 时光润颜发光水好用吗

    题主是否想询问“萱郦冻龄时光润颜发光水好用吗”?好用。萱郦冻龄时光润颜发光水,利用纤连蛋白成分的强大修护再生作用,加速细胞生长,强化角质层,能够有效提升肌肤弹性值,恢复年轻健康态,为皮肤补充流失的水分和支撑肌肤的胶原蛋白,起到基底修护的效果

    2024-04-15
    58500
  • 爽肤水,精华液,润肤露,隔离霜,防晒霜怎么排序啊?

    护肤步骤1 洗脸 要是化妆的话那么第一部就应该是卸妆。。洗面奶或者洁肤皂绝对替代不了卸妆液,因为彩妆的残留是洗面奶卸不掉的。。彩妆的天敌就是卸妆液。爱美的MM们这个钱绝对不能省。。要不然就等着30岁以后色斑的突显吧!2爽肤水或者柔肤水 爽肤

    2024-04-15
    47500
  • 港版的妮维雅爽肤水和国产的区别?

    港版的是国外工厂生产的,国内的是大陆工厂生产,可能执行的质量标准不一样加上劳动力原料等成本不一样价钱也就不一样。而且大多这种在国外有代工厂的品牌国外工厂都是比国内工厂的质量要好,(像我一同学自己在专柜买的ZA就没有她朋友送她的在香港买的ZA

    2024-04-15
    42800

发表评论

登录后才能评论
保存