您现在的位置:首页 >> 前端 >> 内容

前端增删改查代码分析

时间:2018/5/7 9:24:50 点击:

  核心提示:前端增删改查代码分析!DOCTYPE htmlhtml head meta charset=UTF-8 meta name=viewport content=width=device-width,...

前端增删改查代码分析

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<meta name="viewport" content="width=device-width, initial-scale=1.0, 
minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" /> 
		<title></title>
		<script type="text/javascript" src="js/angular.min.js" ></script>
		<script type="text/javascript" src="js/jquery-3.2.1.min.js" ></script>
		<script type="text/javascript">
			
			var app = angular.module("myApp",[]);
			app.controller("myCtrl",function($scope){
				
				//准备数据源
				$scope.goods = [
						{"id":"201","name":"opopA37","price":2000,"brand":"oppo"},
						{"id":"202","name":"天逸310","price":4300,"brand":"联想"},
						{"id":"203","name":"暖手宝","price":30,"brand":"凤凰"},
						{"id":"204","name":"可乐","price":5,"brand":"百事"},
						{"id":"205","name":"芬达","price":4,"brand":"可口可乐"}];
						
				//过滤条件
				$scope.searchKey;
				//排序条件
				$scope.orderByKey;
				//删除  通过索引删除一条,,如果重新排序了,就会有bug
//				$scope.deletGoodsByindex = function(i){
//					$scope.goods.splice(i,1);//
//				}


				//通过id删除,没有任何bug
				$scope.deletGoodsById = function(_id){
					//得到_id在数据源中的索引号
					//循环遍历得到每一个商品,用它的id和_id比较
					for(var i=0;i<$scope.goods.length;i++){
						var g = $scope.goods[i];//得到一个商品
						if(g.id == _id){//此g就是要删除的,,删除之
							$scope.goods.splice(i,1);
							break;
						}
					}
				};
				
				//全选的属性
				$scope.checkall = false;
				//添加功能区域
				$scope.addIsShow = false;
				$scope.newname;
				$scope.newprice;
				$scope.newbrand;
				$scope.addNewGood = function(){
					var n = Math.round(Math.random()*100);//随机数作为id
					//创建新商品对象,属性赋值
					var a = {};
					a.id = n;
					a.name = $scope.newname;
					a.price = $scope.newprice;
					a.brand = $scope.newbrand;
					//添加到数组
					$scope.goods.push(a);
					$scope.addIsShow = false;//设置隐藏
				}
				//修改
				$scope.updateGood;
				$scope.updateIsShow = false;//修改区域默认不显示
				$scope.updatename;
				$scope.updateprice;
				$scope.updatebrand;
				$scope.showGoodById = function(_id){
					
					$scope.updateIsShow = true;//显示修改区域
					//回显修改商品的信息,,先通过遍历数据源,找到要修改的商品对象
					for(var i=0;i<$scope.goods.length;i++){
						if($scope.goods[i].id==_id){//找到了要修改的商品信息
							$scope.updateGood = $scope.goods[i];//收集修改对象
							break;
						}
					}
					//找到要修改的对象后,显示在页面中,数据绑定
					$scope.updatename=$scope.updateGood.name;
					$scope.updateprice=$scope.updateGood.price;
					$scope.updatebrand=$scope.updateGood.brand;
				}
				//提交修改信息到数据源
				$scope.updateGoodF = function(){
					$scope.updateIsShow = false;//隐藏修改区域
					$scope.updateGood.name = $scope.updatename;
					$scope.updateGood.price = $scope.updateprice;
					$scope.updateGood.brand = $scope.updatebrand;
					
				}
				//批量删除
				$scope.deleteMore = function(){
					//获取所有选择的checkbox
					var cks = $("input[type=checkbox]:checked");
					for(var i=0;i<cks.length;i++){
						var ck = cks[i];
						var _id = ck.value;//得到要删除的商品的id
						for(var j=0;j<$scope.goods.length;j++){//到数据源中找到和当前id匹配的商品,删除之
							if($scope.goods[j].id == _id){
								$scope.goods.splice(j,1);
								break;
							}
						}
					}
				}
				
				
			});
		</script>
		<style type="text/css">
			table{
				text-align: center;
			}
			.red{
				background-color: red;
			}
			.green{
				background-color: green;
			}
		</style>
	</head>
	<body ng-app="myApp" ng-controller="myCtrl">
		<center>
			查询:<input type="text" ng-model="searchKey" />&nbsp;&nbsp;
			排序条件:<select ng-model="orderByKey">
				<option value="">--请选择--</option>
				<option value="name">--按名字正序--</option>
				<option value="-name">--按名字倒序--</option>
				<option value="price">--按价钱正序--</option>
				<option value="-price">--按价钱倒序--</option>
				<option value="id">--按id正序--</option>
				<option value="-id">--按id倒序--</option>
			</select>
			<input type="button" value="入库" ng-click="addIsShow=true"/>
			<br /><br />
			<p ng-show="addIsShow">
				名字:<input type="text" ng-model="newname" /><br />
				价钱:<input type="text" ng-model="newprice" /><br />
				品牌:<input type="text" ng-model="newbrand" /><br />
				<input type="button" value="添加" ng-click="addNewGood();" /><br />
			</p>
			<input style="text-align: right;" type="button" value="批量删除" ng-click="deleteMore();"/>
			<table width="450px" border="1px" bordercolor="red" cellpadding="1px" cellspacing="1px" >
				<tr style="background-color: grey;">
					<td><input type="checkbox" ng-model="checkall"/></td>
					<td>序号</td>
					<td>id</td>
					<td>名字</td>
					<td>价格</td>
					<td>品牌</td>
					<td>操作</td>
				</tr>
				<tr ng-repeat="g in goods |filter:searchKey | orderBy:orderByKey" class="{{$index%2==0?'red':'green'}}">
					<td><input type="checkbox" value="{{g.id}}" ng-model="checkall" /></td>
					<td>{{$index+1}}</td>
					<td>{{g.id}}</td>
					<td>{{g.name}}</td>
					<td>{{g.price}}</td>
					<td>{{g.brand}}</td>
					<td>
						<input type="button" value="删除" ng-click="deletGoodsById(g.id);"/>
						<input type="button" value="修改" ng-click="showGoodById(g.id);"/>
					</td>
				</tr>
			</table>
			<p ng-show="updateIsShow">
				名字:<input type="text" ng-model="updatename" /><br />
				价钱:<input type="text" ng-model="updateprice" /><br />
				产地:<input type="text" ng-model="updatebrand" /><br />
				<input type="button" value="提交修改" ng-click="updateGoodF();" /><br />
			</p>
			
			
		</center>
	</body>
</html>

作者:网络 来源:Mr_Cao_的博客