购物车的简单使用

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="../AngularJS/angular.js" ></script>
<script>
var app = angular.module("myApp",[]);
app.controller("myCtrl",function($scope){
$scope.shops = [{
name:"qq1",
price:12.9,
num:3,
state:false
},{
name:"wx1",
price:22,
num:5,
state:false
},{
name:"qq2",
price:33,
num:6,
state:false
},{
name:"wx2",
price:44,
num:4,
state:false
}];

//增加
$scope.add = function(index){
$scope.shops[index].num += 1; 
}
//减少
$scope.reduce = function(index){
if($scope.shops[index].num>1){
$scope.shops[index].num -= 1; 
}else{
if(window.confirm("要删除"+$scope.shops[index].name+"吗?")){
$scope.shops.splice(index,1);
}else{

}
}
}

//获取总价
$scope.allPrice = function(){
var all = 0;
for(index in $scope.shops){
all += $scope.shops[index].price * $scope.shops[index].num;
}
return all;
}

//全选
$scope.selectAll = false;
$scope.selectAllFun = function(){
if($scope.selectAll){
for(index in $scope.shops){
$scope.shops[index].state = true;
}
}else{
for(index in $scope.shops){
$scope.shops[index].state = false;
}
}
}

//反选
$scope.checkSelectAll = function(){
var flag = false;
for(index in $scope.shops){
if($scope.shops[index].state){

}else{
flag = true;
}
}
//至少有一个没有被选中
if(flag){
$scope.selectAll = false;
}else{
$scope.selectAll = true;
}
}

//批量删除
$scope.deleteSelected = function(){
var selectedShop = [];
for(index in $scope.shops){
if($scope.shops[index].state){
selectedShop.push($scope.shops[index].name);
}
}

if(selectedShop.length>0){
for(i1 in selectedShop){
for(i2 in $scope.shops){
if(selectedShop[i1] == $scope.shops[i2].name){
$scope.shops.splice(i2,1);
}
}
}
}else{
alert("请先选择")
}
}

//判断数据源的长度
$scope.getSize = function(){
if($scope.shops.length > 0 ){
return false;
}else{
return true;
}
}
});
</script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
<center>
<h3>我的购物车</h3>
<button ng-click="deleteSelected()">批量删除</button><br /><br />
<table ng-hide="getSize()" border="1 solid blue" cellpadding="10" cellspacing="0">
<thead>
<tr>
<th><input type="checkbox" ng-model="selectAll" ng-click="selectAllFun()"/></th>
<th>name</th>
<th>price</th>
<th>number</th>
<th>totalPrice</th>
<th>option</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="shop in shops">
<td><input type="checkbox" ng-model="shop.state" ng-click="checkSelectAll()"/></td>
<td>{{shop.name}}</td>
<td>{{shop.price | currency:"¥"}}</td>
<td>
<button ng-click="reduce($index)">-</button>
<input type="number" ng-model="shop.num" style="width: 30px;"/>
<button ng-click="add($index)">+</button>
</td>
<td>{{shop.price * shop.num | currency:"¥"}}</td>
<td><button>删除</button> </td>
</tr>
<tr>
<td colspan="6">总价为:<span ng-bind="allPrice() | currency:'¥'"></span></td>
</tr>
</tbody>
</table>

<span ng-show="getSize()">您的购物车为空,请先逛<a href="#">购物车</a></span>
</center>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简易购物车程序,使用文件保存购物车中的商品信息和价格。 ```python import os def load_cart(): cart = {} if os.path.exists("cart.txt"): with open("cart.txt", "r") as f: for line in f: name, price = line.strip().split(",") cart[name] = float(price) return cart def save_cart(cart): with open("cart.txt", "w") as f: for name, price in cart.items(): f.write(f"{name},{price}\n") def add_item(cart): name = input("请输入商品名称:") price = input("请输入商品价格:") cart[name] = float(price) print(f"{name}已加入购物车!") def remove_item(cart): name = input("请输入要删除的商品名称:") if name in cart: del cart[name] print(f"{name}已从购物车中删除!") else: print(f"{name}不在购物车中!") def show_cart(cart): print("购物车中的商品:") total_price = 0 for name, price in cart.items(): print(f"{name}:{price}") total_price += price print(f"总价格:{total_price}") def main(): cart = load_cart() while True: choice = input("请选择操作(1.添加商品 2.删除商品 3.查看购物车 4.退出):") if choice == "1": add_item(cart) elif choice == "2": remove_item(cart) elif choice == "3": show_cart(cart) elif choice == "4": save_cart(cart) print("已退出程序。") break else: print("无效的选择,请重新输入。") if __name__ == "__main__": main() ``` 程序中使用了四个函数: - `load_cart`:从文件中加载购物车信息,返回一个字典。 - `save_cart`:将购物车信息保存到文件中。 - `add_item`:向购物车中添加商品。 - `remove_item`:从购物车中删除商品。 - `show_cart`:显示购物车中的商品信息和总价格。 程序的主函数 `main` 中使用一个无限循环,根据用户的选择执行相应的操作。用户选择退出时,程序会调用 `save_cart` 函数将购物车信息保存到文件中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值