发货

xiaoxiao2021-02-28  47

<!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-1.8.2.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> angular.module("myapp", []).controller("myctrl", function($scope,$http) {//获取网络请求的数据 //1.从网络获取数据 $http.get("goods.json").then(function(success) { $scope.goods = success.data; }) //2.创建下拉选项的数组 $scope.order = ["请选择排序方式", "按商品价格升序", "按商品价格降序", "按生产日期升序", "按生产日期降序"]; $scope.optionName = $scope.order[0]; //3.新增 $scope.flag = false; $scope.save = function() { //3.0清空输入框的内容 $(".inp").val(""); //3.1获取到输入的内容 var gname = $scope.gname; var price = $scope.price; var address = $scope.address; //3.2进行验证 if(gname == undefined || gname == "") { alert("输入的商品名称不能为空"); return; } if(price == undefined || price == "") { alert("输入的商品价格不能为空"); return; } if(address == undefined || address == "") { alert("输入的商品产地不能为空"); return; } //3.2合格的添加数据 $scope.goods.push({ checked: false, gname: gname, address: address, id: 1, regDate: new Date(), price: price, state: "发货" }) //3.3隐藏表单 $scope.flag = false; } //4.全选和全不选 $scope.selectAll = function() { //4.1获取到全选的状态 var ic = $scope.ischeck; for(var i = 0; i < $scope.goods.length; i++) { $scope.goods[i].checked = ic; } } //5.单个删除 $scope.del = function(index) { $scope.goods.splice(index, 1); } //6.修改 $scope.update = function(index) { var value = prompt("请输入修改的内容", $scope.goods[index].price); $scope.goods[index].price = value; } //7.批量删除 $scope.delAll = function() { for(var i = 0; i < $scope.goods.length; i++) { if($scope.goods[i].checked == true) { $scope.goods.splice(i, 1); i--; } } } //8.批量发货 $scope.faAll = function() { for(var i = 0; i < $scope.goods.length; i++) { if($scope.goods[i].checked == true) { $scope.goods[i].state = "已发货"; $scope.goods[i].checked = false; $scope.ischeck = false; } } } //9排序 $scope.change = function() { var value = $scope.optionName; switch(value) { case "按商品价格升序": $scope.goods.sort(function(a, b) { return a.price - b.price; }) break; case "按商品价格降序": $scope.goods.sort(function(a, b) { return b.price - a.price; }) break; case "按生产日期升序": $scope.goods.sort(function(a, b) { return a.regDate - b.regDate; }) break; case "按生产日期降序": $scope.goods.sort(function(a, b) { return b.regDate - a.regDate; }) break; default: break; } } }) </script> </head> <body ng-app="myapp" ng-controller="myctrl"> <button ng-click="flag=true">新增</button> <button ng-click="delAll()">批量删除</button> <button ng-click="faAll()">批量发货</button> <input type="text" ng-model="selectName" placeholder="请输入商品名称" /> <input type="text" ng-model="selectProduce" placeholder="请输入商品产地" /> <select ng-model="optionName" ng-options="s for s in order" ng-change="change()">{{s}}</select><br /> <table border="1px" cellspacing="0" cellpadding="0" width="800px"> <tr> <td><input type="checkbox" ng-model="ischeck" ng-change="selectAll()" /></td> <td>商品名称</td> <td>商品产地</td> <td>商品价格</td> <td>生产日期</td> <td>状态</td> <td>操作</td> </tr> <tr ng-repeat="a in goods|filter:{gname:selectName,address:selectProduce}"> <td><input type="checkbox" ng-model="a.checked" /></td> <td>{{a.gname}}</td> <td>{{a.address}}</td> <td>{{a.price|currency:"¥"}}</td> <td>{{a.regDate|date:"yy年MM月dd日 hh时mm分ss秒"}}</td> <td> <span ng-show="a.state=='已发货'"> {{a.state}} </span> <span ng-show="a.state=='发货'" ng-click="a.state='已发货'"> <a href="#">{{a.state}}</a> </span> </td> <td><button ng-click="del($index)">删除</button>|<button ng-click="update($index)">修改</button></td> </tr> </table> <form ng-show="flag"> 商品名称:<input type="text" ng-model="gname" class="inp" /><br /> 商品价格: <input type="text" ng-model="price" class="inp" /><br /> 商品产地: <input type="text" ng-model="address" class="inp" /><br /> <button ng-click="save()">保存</button> </form> </body> </html>
转载请注明原文地址: https://www.6miu.com/read-2631223.html

最新回复(0)