购物车修改删除 全选反选批量删除查询排序

本文介绍了一个使用Angular开发的购物车应用程序。该应用实现了产品的增删改查功能,并提供了排序、筛选及批量操作等功能。通过实际代码示例展示了Angular在前端开发中的应用。
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="js/angular.js" ></script>
        <script>
            var app=angular.module("myApp",[])
            app.controller("myCtrl",function($scope){
                $scope.products=[
                {"id":"80","name":"iphone","price":5400,state:false},
                {"id":"1200","name":"ipad mini","price":2200,state:false},
                {"id":"500","name":"ipad air","price":2340,state:false},
                {"id":"290","name":"ipad","price":1420,state:false},
                {"id":"910","name":"imac","price":15400,state:false}
                ]
                //删除
                 $scope.de=function(name){
                    if(window.confirm("确定要删除"+name+"吗?")){
                        for(index in $scope.products){
                            if(name==$scope.products[index].name){
                                $scope.products.splice(index,1);
                            }
                        }
                    }
                }
                
                //全选、全不选
                $scope.selectAll = false;
                $scope.selectAllFun = function() {
                    if($scope.selectAll) {
                        for(index in $scope.products) {
                            $scope.products[index].state = true;
                        }
                    } else {
                        for(index in $scope.products) {
                            $scope.products[index].state = false;
                        }
                    }
                }
                
                
                //反选
                $scope.checkselAll = function() {
                    var flag = false;
                    for(index in $scope.products) {
                        if(!$scope.products[index].state) {
                            //满足条件
                            flag = true;
                        }
                    }

                    if(flag) {
                        $scope.selectAll = false;
                    } else {
                        $scope.selectAll = true;
                    }
                }
                
                
                //批量删除
                $scope.delselect = function() {
                    var selArr = [];
                    for(index in $scope.products) {
                        if($scope.products[index].state) {
                            selArr.push($scope.products[index].name)
                        }
                    }

                    if(selArr.length <= 0) {
                        alert("请先选择");
                    } else {
                        if(window.confirm("确定要删除吗?")) {
                            for(index1 in selArr) {
                                for(index2 in $scope.products) {
                                    if(selArr[index1] == $scope.products[index2].name) {
                                        $scope.products.splice(index2,1);
                                    }
                                }
                            }
                        } else {

                        }
                    }
                }
                
                //修改
                $scope.up=function(name){
                    var pro=window.prompt("确定要修改吗?");
                    if(pro!=null){
                    //    alert(pro);
                    for (index in $scope.products) {
                        if(name== $scope.products[index].name){
                            $scope.products[index].price=pro;
                        }
                    }
                    }
                    
                    
                    
                }
                
                
                
            })
    
        </script>
    </head>
    <body ng-app="myApp" ng-controller="myCtrl" style="margin: 0px auto;">
        <h1 style="margin: 0px auto;">购物车</h1>
        产品名称:<input type="text" placeholder="产品名称" ng-model="search"/>&nbsp;&nbsp;&nbsp;&nbsp;
        排序:<select ng-model="paixu">
            <option value="">排序方式</option>
            <option value="id">id正序</option>
            <option value="-id">id逆序</option>
            <option value="price">价格正序</option>
            <option value="-price">价格逆序</option>
        </select>
        &nbsp;<input type="button" value="批量删除" ng-click="delselect()"/>
        <table border="1px solid black" cellpadding="10px" cellspacing="0" width="500px" height="300px">
            <tr>
                <td><input type="checkbox" ng-model="selectAll" ng-click="selectAllFun()"></td>
                <td>产品编号</td>
                <td>产品名称</td>
                <td>产品价格</td>
                <td>操作</td>
            </tr>
            <tr ng-repeat="p in products | filter:{name:search} | orderBy:paixu" >
                <td><input type="checkbox" ng-model="p.state" ng-click="checkselAll()"></td>
                <td>{{p.id}}</td>
                <td>{{p.name}}</td>
                <td>{{p.price}}</td>
                <td><input type="button" value="删除" ng-click="de(p.name)"><input type="button" value="修改" ng-click="up(p.name)"></td>
            </tr>
        </table>
    </body>
</html>

在线商城系统的设计与实现 要求:使用 Java 语言和 SpringBoot 框架完成开发,系统需包含以下核心模块: 管理端功能 1.用户管理 管理员登录 / 退出(需实现权限控制,区分管理员与普通用户)。 用户信息查询、新增、修改删除(支持按用户名 / 手机号筛)。 2.商品分类管理 分类层级管理(支持一级分类、二级分类)。 分类新增、修改删除、状态启用 / 禁用(如 “服装”“电子产品” 等分类)。 3.商品管理 商品信息维护(名称、价格、库存、图片、详情、所属分类等)。 商品上下架管理(启用 / 停售状态)、批量导入 / 导出商品数据。 商品搜索与筛(支持关键词、价格区间、销量排序等)。 4.订单管理 订单列表查询(支持按订单状态、时间、用户筛)。 订单状态修改(待付款 / 待发货 / 已发货 / 已完成 / 已取消)。 订单详情查看、物流信息更新、退款处理。 5.促销管理 优惠券发放与管理(满减券、折扣券,设置有效期和使用条件)。 限时秒杀活动配置(支持多商品同时参与,库存扣减需考虑线程安全)。 用户端功能 1.用户注册与登录 手机号 / 邮箱注册(需短信 / 邮件验证码验证)。 用户名密码登录、第三方登录(如微信 / QQ,可)。 登录状态保持与安全退出。 2.首页与商品浏览 首页轮播图展示、热门商品推荐、分类导航。 商品详情页(显示规格、评价、相关推荐商品)。 商品搜索与筛(支持分类筛、价格排序、销量排序)。 3.购物车管理 添加商品至购物车(支持多规格择,如颜色、尺码)。 购物车列表展示、数量修改删除商品、全选 / 。 结算时自动计算总价、应用优惠券(需校验优惠券有效性)。 4.订单与支付 提交订单(自动生成订单号,关联收货地址、支付方式)。 模拟支付功能(调用第三方支付接口,如支付宝 / 微信支付沙箱环境)。 订单状态跟踪(用户可查看物流信息、申请退款)。 5.个人中心 收货地址管理(新增、编辑、设置默认地址)。 优惠券查看与使用记录、浏览历史查询
最新发布
12-28
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值