用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

随机推荐

  • 男人护肤品有哪些牌子

    男士护肤品品牌有曼秀雷敦、妮维雅、欧莱雅、碧欧泉、朗仕。1、曼秀雷敦曼秀雷敦男士是较早进入国内的专业男士护肤品牌,于2003年推出男士专业护肤系列,以“活炭”配方的洁面乳系列产品著称。2、妮维雅妮维雅男士是妮维雅旗下全球知名男士面部护理品牌

    2024-04-15
    47000
  • 2015年妮维雅脱毛的广告那个海报的女代言人是谁?

    冰点脱毛是由以色列飞顿激光公司独家专利推出,目前最先进的一种永久性激光脱毛方法,依据选择性光热作用原理,革命性的利用飞顿冰点半导体激光脱毛仪器,激光穿透皮肤表层使毛囊保持一定温度,温和地使毛囊和周围干细胞失去活性,达到永久脱毛的目的。它可大

    2024-04-15
    32700
  • 精华露和精华液的区别 精华露和精华液有何区别

    精华露和精华液是护肤品中常见的两种产品,它们虽然名字相似,但在使用方法、质地和功效上有一些区别。下面我将从几个角度来为大家解答。精华露和精华液在质地上有所不同。精华露通常具有较为清爽的质地,质地轻盈,很容易吸收。而精华液则相对较为滋润,质地

    2024-04-15
    34700
  • 妮维雅和欧莱雅哪个好?妮维雅是哪国的品牌?

    妮维雅这个品牌大家都比较熟悉,很多人都会想到它们家的洗面奶,还经常被拿来和其他的护肤品牌做比较,比如说欧莱雅这个品牌,因为欧莱雅的护肤产和妮维雅一样也是有男士和女士的,那妮维雅和欧莱雅哪个好?妮维雅是哪国的品牌?1、妮维雅和欧莱雅哪个好妮维

    2024-04-15
    30500
  • 精华液和精华乳的区别

    精华液和精华乳的区别在于性质不同、功效不同等。1、性质不同:一般情况下精华液的性质属于高保湿型的护肤品。精华乳的性质一般情况下密度相对于精华液的要稍高一些,是一种功能性质的高营养护肤品。2、功效不同:一般情况下精华液的功效可以改善肌肤暗沉,

    2024-04-15
    34900
  • 精华液和精华露哪个先用?

    关于“精华液和精华露哪个先用”的问题,其实并没有一个固定的答案。不过根据使用经验和化妆师的建议,我们可以从以下几个角度探讨这个问题:我们需要了解两者的区别。精华液是一种含有高浓度有效成分的产品,可以深层滋养肌肤、修复细胞,并具有美白、保湿等

    2024-04-15
    33500
  • 妮维雅活力清新爽身气雾

    是一款活力清新爽身的气雾,令肌肤持久保持干爽舒适,令人感受妮维雅始终如一的温柔呵护,鳄梨萃取物,香体同时为肌肤提供滋养。带来一整天的清新感受。有效止汗长达24小时。散发爽朗清新的柠檬草香气,令人精神为之一振。滋润呵护腋下肌肤。不含酒精,任何

    2024-04-15
    32500

发表评论

登录后才能评论
保存