<!DOCTYPE html>
<head>
<meta charset="utf-8" />
<title>angular</title>
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
<script type="text/javascript"> //购物车中的数据;
//var boughtList = {};
</script>
<style>
*{margin:0; padding:0; list-style:none;}
#wrap{font-size:12px; line-height:20px; padding:20px;}
.left li{float:left; padding:10px;}
.shopcar li{float:left; padding:10px;}
</style>
</head>
<body>
<div id="wrap" ng-app="myApp" ng-controller="showItem">
<div style="overflow:hidden">
<ul class="left">
<li ng-repeat="value in items">
<p>名称:{{value.name}}</p>
<p>单价:{{value.price}}</p>
<p><a href="javascript:;" ng-click="addToShopCarList()">购买</a></p>
</li>
</ul>
</div>
<hr />
<p>点击购物车内的商品可以减少购买的商品数量</p>
<div class="shopcar">
<ul style="overflow:hidden;">
<li ng-repeat="value in shopCar" ng-click="DelFromShopCarList()" style="cursor:pointer">
<p>名称:{{value.name}}</p>
<p>数量:{{value.amount}}</p>
<p>单价:{{value.price}}</p>
</li>
</ul>
<p>商品总价:{{total}} 元</p>
</div>
</div>
<script type="text/javascript">
var item = [
{id : '1',name : '蜂蜜' ,price : 30},
{id : '5',name : '鼠标' ,price : 39},
{id : '2',name : '黄豆酱',price : 15},
{id : '3',name : '护手霜',price : 15},
{id : '4',name : '保温杯',price : 29},
{id : '6',name : '米老头',price : 18}
];
var shopCar=[];
var app=angular.module("myApp",[]);
app.controller("showItem",function($scope){
$scope.total=0;
$scope.items=item;
$scope.shopCar=shopCar; $scope.DelFromShopCarList=function(){
$scope.total-=this.value.price;
for(var i=0;i<$scope.shopCar.length;i++){
if($scope.shopCar[i].id==this.value.id){
$scope.shopCar[i].amount-=1;
if($scope.shopCar[i].amount===0){
$scope.shopCar.splice(i,1)
}
}
}
} $scope.addToShopCarList=function(){ var item={
name:this.value.name,
price:this.value.price,
id:this.value.id,
amount:1,
};
var len=shopCar.length;
var inArr=true;
for(var i=0;i<len;i++){
if(shopCar[i].id===this.value.id){
inArr=false;
shopCar[i].amount+=1;
break;
}
} if(inArr){
shopCar.push(item);
} $scope.total+=shopCar[i].price;
}
})
</script>
</body>
</html>

头一次试验angularjs,不知道是不是这么玩,不对的话就看个热闹吧

头一次试验angularjs的更多相关文章

  1. AngularJS安装配置与基础概要整理(上)

    以前整理的,可供参考. 安装: 1.首先要安装node.js和它的npm包管理系统.(nodejs相关待整理) 2.安装grunt .grunt是一个基于任务的Javascript工程命令行构建工具. ...

  2. 在IE7下使用angularjs(转)

    在我的环境中,主要支持的浏览器为:ie7, ie8, ie9, chrome等.在试验angularjs时,发现在ie7环境下运行有问题,于是在网上搜了一下相关的内容,说HTML标签的写法要这样: & ...

  3. Angularjs跨域

    一.首先我们要明白跨域的字面概念,读过留过印象之后,下面将会有例子进一步解释 有一篇文章<跨域的理解与实现>描述得很清楚,在这里摘录如下: 域(Domain)是Windows网络中独立运行 ...

  4. QT总结第3篇:如何在QT中添加.lib,.dll还有.h文件

    因为我在工作的过程中,使用的是第三方提供的库,但是如何将这些库添加到QT的工程中,是个问题,让我恼火了很久,怎么弄都是错的. 下面,我会对这个问题,进行叙述,希望其他人第一次遇到这种问题的时候,可以轻 ...

  5. Qt调用dll中的功能函数

    声明: 事先我已经自己动手写了一个简单的dll文件(myDLL.dll),C版接口的.并且用我前两篇有关DLL文章里面的方法,从dll中导出了导入库(.lib)文件,dll中有两个函数,原型如下:   ...

  6. 加载dll、lib库

    2.是关于如何加载dll或lib库的.可以看这篇bog   Qt调用dll中的功能函数点击打开链接 ************************************************** ...

  7. Qt调用DLL

    声明: 事先我已经自己动手写了一个简单的dll文件(myDLL.dll),C版接口的.并且用我前两篇有关DLL文章里面的方法,从dll中导出了导入库(.lib)文件,dll中有两个函数,原型如下:   ...

  8. 加载dll、lib库(例子的代码很全)

    是关于如何加载dll或lib库的.可以看这篇bog   Qt调用dll中的功能函数点击打开链接 **************************************************** ...

  9. Qt调用VS生成的dll

      预备知识: 1.如果在没有导入库文件(.lib),而只有头文件(.h)与动态链接库(.dll)时,我们才需要显示调用,如果这三个文件都全的话,我们就可以使用简单方便的隐式调用. 2.通常Windo ...

随机推荐

  1. ASP.NET TextBox 当鼠标点击后清空默认提示文字[转]

    前台文本框里添加下面2个事件属性: OnFocus="javascript:if(this.value=='提示文字') {this.value=''}" OnBlur=" ...

  2. C#异常处理性能测试

    异常处理性能测试 using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq ...

  3. SpringMVC原理解析-Servlet容器启动时初始化SpringMVC应用的原理

  4. flume 配置

    [root@dtpweb data]#tar -zxvf apache-flume-1.7.0-bin.tar.gz[root@dtpweb conf]# cp flume-env.sh.templa ...

  5. 区间重叠计算及IntervalTree初识

    最近被人问到这样一个问题的解决方案:在一个餐馆的预定系统中,接受用户在未来任意一段时间内的预订用餐,用户在预订的时候需要提供用餐的开始时间和结束,餐馆的餐桌是用限的,问题是,系统要在最快的时间段计算出 ...

  6. Thinkphp 中 distinct 的用法

    TP中distinct()的用处主要是去除重复的值 在Thinkphp手册中也详细说明了(链接:http://document.thinkphp.cn/manual_3_2.html#distinct ...

  7. Model Validation in ASP.NET Web API By Mike Wasson|July 20, 2012 268 of 294 people found this helpful

    using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using ...

  8. 多线程java的concurrent用法详解(转载)

    我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便.而当针对高质量Java ...

  9. 我的第一个开源项目-logger4Net

    学会学习,学会分享,学会创造. 这我的第一个开源项目.以前总觉得开源离自己很远,但通过不断学习发现,其实自己已经走在这条路上.思想就在那,只要懂得学习,懂得分享,就会懂享受创造的快乐感与殷实感. 没做 ...

  10. DELPHI XE5 与SQLITE

    最近一次使用DELPHI做项目是使用DELPHI2009,为了访问本地数据库方便,使用ACCESS数据库,不需要安装驱动,(WINDOWS自带),但是ACCESS数据库的性能确实很糟糕,通过ADO连接 ...