Angular,js实现简单购物车功能

本文介绍了一个简单的购物车功能实现方案,使用AngularJS框架进行数据绑定和处理。通过定义商品数组并利用AngularJS指令如ng-repeat来展示商品信息,同时实现了添加和删除商品的功能,并实时更新购物车总金额。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html>

    <head>
        <meta charset="utf-8" />
        <title>实现简单购物车功能</title>
        <script src="js/angular.min.js" type="text/javascript" charset="utf-8"></script>
        <script src="js/jquery-3.2.1.min.js" type="text/javascript" charset="utf-8"></script>
    </head>

    <body ng-app="myApp" ng-controller="myCtrl">

        <h3>您的购物车</h3>

        <table border="1px" cellspacing="0px" cellpadding="0px" class="t">
            <tr>
                <td>商品名</td>
                <td>数量</td>
                <td>单价</td>
                <td>小计</td>
            </tr>
            <tr ng-repeat="good in goods">
                <td>{{good.name}}</td>
                <td>{{good.count}}</td>
                <td>{{good.price|currency:"RMB¥"}}</td>
                <td>{{good.count*good.price|currency:"RMB¥"}}<input type="button" value="删除" ng-click="dele($index)" /><input type="button" value="添加" ng-click="add($index)" /></td>
            </tr>
        </table>
        <div class="sum">
            总金额:{{sum}}
        </div>

        <!--
            js里面
            1.定义数组
            2.实现删除
        -->
        <script type="text/javascript">
            var mo = angular.module("myApp", []);
            mo.controller("myCtrl", function($scope) {
                //定义一个数组
                $scope.goods = [{
                    "name": "鼠标",
                    "count": "1",
                    "price": "15"
                }, {
                    "name": "键盘",
                    "count": "3",
                    "price": "40"
                }, {
                    "name": "耳机",
                    "count": "1",
                    "price": "100"
                }];

                //显示总金额
                var sum1 = 0;
                for (var i = 0; i < $scope.goods.length; i++) {
                    sum1 += $scope.goods[i].count * $scope.goods[i].price;
                }
                //赋值个总金额
                $scope.sum = sum1;

                //删除
                $scope.dele = function($index) {
                    //                  alert($index);
                    $scope.goods.splice($index, 1);
                    //删除完毕,将总金额再计算一遍
                    var sum1 = 0;
                    for (var i = 0; i < $scope.goods.length; i++) {
                        sum1 += $scope.goods[i].count * $scope.goods[i].price;
                    }
                    //赋值个总金额
                    $scope.sum = sum1;
                    //提示
                    if ($scope.goods.length == 0) {
                        alert("购物车空了");
                    }
                }

                //添加
                $scope.add = function($index){
                    $scope.goods[$index].count++;

                    var sum1 = 0;
                    for (var i = 0; i < $scope.goods.length; i++) {
                        sum1 += $scope.goods[i].count * $scope.goods[i].price;
                    }
                    //赋值个总金额
                    $scope.sum = sum1;
                }
            });
        </script>
    </body>

</html>

效果图

购物车

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值