国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Angularjs 制作購物車功能實例代碼

2019-11-20 09:00:37
字體:
來源:轉載
供稿:網友

初學angularJS   閑暇之余做了個小案例。

功能:計算購物車商品的價格,以及刪除購物車商品。

以下是完整案例(jQuery和angularjs需要自己引入)

<!doctype html><html ng-app="myApp"><head><meta charset="utf-8"><title>無標題文檔</title><style>.cursors{cursor:pointer}</style><script src="js/jquery-1.11.1.js"></script><script src="js/angular.min.js"></script><script>var A=angular.module('myApp',[]);//購物車 加A.directive('myAdds',function(){return {link:function(scope, element, attr){element.click(function(){var This=thisangular.forEach(scope.dataList,function(data,index,array){if(attr.items==data.items){data.num=parseInt(data.num)+1;scope.allPrices();scope.$apply() //刷新視圖}});});} }})//購物車 減A.directive('myMinus',function(){return {link:function(scope, element, attr){element.click(function(){var This=thisangular.forEach(scope.dataList,function(data,index,array){if(attr.items==data.items){if(data.num<=1){if(confirm('是否刪除該產品')){data.num=0;$(This).siblings('input').val(0);scope.allPrices();scope.$apply();//delete array[index];scope.dataList.splice(index,1)$(This).parents('tr').remove();}}else{data.num=parseInt(data.num)-1;};scope.allPrices();scope.$apply();}});});} }})//全選,全不選A.directive('allOrcan',function(){return function(scope, element, attr){element.click(function(){var isCheck=$(this).find('input').prop('checked');if(isCheck){$('input[type=checkbox]').prop('checked',true);}else{$('input[type=checkbox]').not($('input[type=checkbox]').eq(0)).prop('checked',false);}angular.forEach(scope.dataList,function(data,index,array){data.Bol=isCheck;})scope.allPrices();scope.$apply();})}})//單選A.directive('oneCheck',function(){return function(scope, element, attr){element.click(function(){var This=thisangular.forEach(scope.dataList,function(data,index,array){if(attr.items==data.items){var isCheck=$(This).prop('checked');data.Bol=isCheck;scope.allPrices();scope.$apply();}})});}})A.controller('myAngular',['$scope','$filter',function($scope,$filter){$scope.dataList=[//初始化購物車的數據{Bol:'false',name:'洗衣機',num:'1',items:'0',oneprice:'900',price:''},{Bol:'false',name:'熱水器',num:'1',items:'1',oneprice:'110',price:''},{Bol:'false',name:'空調',num:'1',items:'2',oneprice:'116',price:''},{Bol:'false',name:'冰箱',num:'1',items:'3',oneprice:'2087',price:''},{Bol:'false',name:'電磁爐',num:'1',items:'4',oneprice:'135',price:''},{Bol:'false',name:'被子',num:'1',items:'5',oneprice:'50',price:''},{Bol:'false',name:'本子',num:'1',items:'6',oneprice:'2',price:''},{Bol:'false',name:'筆',num:'1',items:'7',oneprice:'115',price:''},{Bol:'false',name:'杯子',num:'1',items:'8',oneprice:'12',price:''},{Bol:'false',name:'書',num:'1',items:'9',oneprice:'5',price:''},{Bol:'false',name:'零食',num:'1',items:'10',oneprice:'13',price:''}];//總價格的計算$scope.allPrices=function(){$scope.allprice=0;angular.forEach($scope.dataList,function(data,index,array){data.price=data.num*data.oneprice;if(data.Bol==true){$scope.allprice+=parseInt(data.price);}})return $scope.allprice;};//按單價排序$scope.CartSort=function(arg){angular.forEach($scope.dataList,function(data,index,array){arguments.callee['CartSort('+arg+')']=!arguments.callee['CartSort('+arg+')']$scope.dataList=$filter('orderBy')($scope.dataList,arg,arguments.callee['CartSort('+arg+')'])})}}])</script></head><body ng-controller="myAngular"><table border="1">   <tr>     <td><label all-orcan><input type="checkbox">全選/取消全選 </label></td>     <td>名稱</td>     <td>數量</td>     <td ng-click='CartSort("oneprice")'>單價</td>     <td>價格</td>    </tr>   <tr ng-repeat="data in dataList">     <td><input type="checkbox" one-check items={{data.items}}></td>     <td ng-cloak>{{data.name}}</td>     <td><input type="text" ng-cloak ng-model="data.num" items="{{data.items}}" style="width:50px;text-align:center;"> <button my-adds items="{{data.items}}" ng-class="{cursors:true}" >+</button> <button my-minus items="{{data.items}}" ng-class="{cursors:true}" >-</button> </td>     <td ng-cloak>{{data.oneprice}}</td>     <td ng-cloak>{{data.price}}</td>    </tr>     </table>  <div>總價格:{{allPrices()}}</div></body></html><!--<script>alert(0)</script>-->

效果如圖所示: 

尊重勞動成果,轉載請注明出處(http://blog.csdn.net/sllailcp/article/details/47833315)...

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 礼泉县| 龙口市| 吴江市| 霍邱县| 会东县| 临猗县| 墨竹工卡县| 平定县| 屯昌县| 拉孜县| 右玉县| 马尔康县| 武清区| 盐山县| 景东| 东城区| 罗城| 鹤山市| 东乌珠穆沁旗| 普陀区| 定日县| 井冈山市| 通州市| 北宁市| 毕节市| 芜湖县| 绵竹市| 调兵山市| 来宾市| 务川| 昌吉市| 林周县| 西昌市| 仪陇县| 邛崃市| 徐汇区| 民权县| 翁牛特旗| 锦屏县| 翁源县| 和平区|