AngularJS实现表格的增删改查(仅限前端)


Posted in Javascript onJuly 04, 2017

用AngularJS实现对表格的增删改查(仅限前端),具体代码:

AngularJS实现表格的增删改查(仅限前端)

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title>实现表格的增删改查</title>
 
 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
 <meta http-equiv="description" content="this is my page">
 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" href="//apps.bdimg.com/libs/bootstrap/3.3.4/css/bootstrap.min.css" >
 <link rel="stylesheet" href="css/font-awesome.css" type="text/css"></link>
 <link rel="stylesheet" href="css/ui.css" type="text/css"></link>
 <link rel="stylesheet" href="css/form.css" type="text/css"></link>
 
 <script type="text/javascript" src="js/jquery-1.11.1.js"></script>
 <script type="text/javascript" src="js/bootstrap.js"></script>
 <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
 <style>
 .add{
  position:relative;
  top:-40px;
  left:1000px;
 }
 </style>
 </head>
 
 <body>
 <div ng-app="myapp" ng-controller="myCtrl">
 <h2>管理信息:</h2><br>
 <p>搜索:<input type="text" placeholder="请输入关键字" ng-model="test"></p>
 <button class="btn btn-primary add" ng-click="add()">添加</button>
 <table class="table table-bordered" style="text-align: center">
  <thead>
  <tr>
   <td>姓名</td>
   <td>年龄</td>
   <td>城市</td>
   <td>操作</td>
  </tr>
  </thead>
  <tbody>
  <tr ng-repeat="x in texts | filter:test">
   <td>{{x.name}}</td>
   <td>{{x.age}}</td>
   <td>{{x.city}}</td>
   <td>
   <button class="btn btn-warning"" ng-click="update($index)">修改</button> 
   <button class="btn btn-danger" ng-click="del($index)">删除</button>
   </td>
  </tr>
  </tbody>
 </table>
 
 <!-- 添加信息 -->
 <div class="modal" id="modal-1">

  <div class="modal-dialog">

   <div class="modal-content">

   <div class="modal-header">
    <button class="close" data-dismiss="modal">
    <span class="glyphicon glyphicon-remove"></span>
    </button>
    <h3 class="modal-title">添加信息</h3>
   </div>

   <div class="modal-body">
    <div>姓名:</div>
    <input ng-model="newName" type="text">
    <div>年龄:</div>
    <input ng-model="newAge" type="text">
    <div>城市:</div>
    <input ng-model="newCity" type="text">
   </div>

   <div class="modal-footer">
    <button class="btn btn-default" data-dismiss="modal">关闭</button>
    <button class="btn btn-success" ng-click="save()">保存</button>
   </div>

   </div>

  </div>

 </div>
 
 <!-- 修改信息 -->
 <div class="modal" id="modal-2">

  <div class="modal-dialog">

   <div class="modal-content">

   <div class="modal-header">
    <button class="close" data-dismiss="modal">
    <span class="glyphicon glyphicon-remove"></span>
    </button>
    <h3 class="modal-title">修改信息</h3>
   </div>

   <div class="modal-body">
    <div>姓名:</div>
    <input ng-model="prod.name" value="{{prod.name}}" type="text">
    <div>年龄:</div>
    <input ng-model="prod.age" value="{{prod.age}}" type="text">
    <div>城市:</div>
    <input ng-model="prod.city" value="{{prod.city}}" type="text">
   </div>

   <div class="modal-footer">
    <button class="btn btn-default" data-dismiss="modal">关闭</button>
    <button class="btn btn-success" ng-click="ensure()">确定</button>
   </div>

   </div>

  </div>

  </div>
 </div>
 
 <script type="text/javascript">
 var app = angular.module('myapp',[]);
 app.controller('myCtrl',function($scope){
  //定义表格内容
  $scope.texts = [
  {name:"张三",age:"23",city:"海南"},
  {name:"李四",age:"25",city:"香港"},
  {name:"王五",age:"25",city:"济南"},
  {name:"刘六",age:"22",city:"济南"},
  {name:"李七",age:"35",city:"烟台"},
  {name:"张八",age:"32",city:"聊城"},
  {name:"吕九",age:"30",city:"盘锦"}
  ];
  //定义一个空对象,用于保存和修改数据时临时存储
  $scope.prod = {};
  //定义一个单击删除按钮时触发的事件,用于删除选中行
  $scope.del = function ($index) {
  if($index>=0){
   if(confirm("是否删除"+$scope.texts[$index].name) ){
   $scope.texts.splice($index,1);
   }
  }
  };
  
  //定义一个全局变量idx,用于存储选中行的索引,方便执行保存操作。idx取值为0、1、、、、都有用,所以暂取值为-1;
  var idx = -1;
  //定义一个点击添加按钮时触发的事件,用于新增数据
  $scope.add = function(){
  //显示bootstrap中的模块窗口
  $('#modal-1').modal('show');
  
  };
  //定义一个点击保存按钮时触发的事件
  $scope.save = function(){
  //将添加的值赋给数组
  $scope.texts.name = $scope.newName;
  $scope.texts.age = $scope.newAge;
  $scope.texts.city = $scope.newCity;
  $scope.texts.push({name:$scope.newName,age:$scope.newAge,city:$scope.newCity});
  //关闭模块窗口
  $('#modal-1').modal('hide');
  };
  
  
  //定义一个点击修改按钮时出发的事件,用于修改数据
  $scope.update = function($index){
  //显示bootstrap中的模块窗口
  $('#modal-2').modal('show');

  //将选中行的数据绑定到临时对象prod中,在下面的模态窗口中展示出来
  $scope.prod.name = $scope.texts[$index].name;
  $scope.prod.age = $scope.texts[$index].age;
  $scope.prod.city = $scope.texts[$index].city;
  //选中行的索引赋值给全局变量idx
  idx = $index;
  };

  //定义一个点击确定按钮时触发的事件,
  $scope.ensure = function () {
  //将修改后的值赋给数组
  $scope.texts[idx].name = $scope.prod.name;
  $scope.texts[idx].age = $scope.prod.age;
  $scope.texts[idx].city = $scope.prod.city;
  //关闭模块窗口
  $('#modal-2').modal('hide');
  };
  
  
  
 });
 </script>
 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery表单验证使用插件formValidator
Nov 10 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
Jan 06 Javascript
批量修改标签css样式以input标签为例
Jul 31 Javascript
jQuery中:last-child选择器用法实例
Dec 31 Javascript
jquery+css实现绚丽的横向二级下拉菜单-附源码下载
Aug 23 Javascript
jquery插件方式实现table查询功能的简单实例
Jun 06 Javascript
Bootstrap Scrollspy源码学习
Mar 02 Javascript
浅谈 Vue 项目优化的方法
Dec 16 Javascript
详解Angular6.0使用路由步骤(共7步)
Jun 29 Javascript
解决vue移动端适配问题
Dec 12 Javascript
有趣的JavaScript隐式类型转换操作实例分析
May 02 Javascript
JS 基本概念详细介绍
Oct 16 Javascript
js CSS3实现卡牌旋转切换效果
Jul 04 #Javascript
JavaScript中三个等号和两个等号你了解多少
Jul 04 #Javascript
原生js实现简单的链式操作
Jul 04 #Javascript
详解用vue编写弹出框组件
Jul 04 #Javascript
使用vue构建一个上传图片表单
Jul 04 #Javascript
vue-resource 拦截器(interceptor)的使用详解
Jul 04 #Javascript
JavaScript在控件上添加倒计时功能的实现代码
Jul 04 #Javascript
You might like
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
2011/05/04 PHP
php生成图片验证码的实例讲解
2015/08/03 PHP
JS创建优美的页面滑动块效果 - Glider.js
2007/09/27 Javascript
JAVASCRIPT keycode总结
2009/02/04 Javascript
Javascript:为input设置readOnly属性(示例讲解)
2013/12/25 Javascript
利用浏览器全屏api实现js全屏
2014/01/16 Javascript
js之ActiveX控件使用说明 new ActiveXObject()
2014/03/03 Javascript
JavaScript中函数(Function)的apply与call理解
2015/07/08 Javascript
再谈Javascript中的异步以及如何异步
2016/08/19 Javascript
深入理解jQuery3.0的domManip函数
2016/09/01 Javascript
Bootstrap表单控件使用方法详解
2017/01/11 Javascript
详解vue父子模版嵌套案例
2017/03/04 Javascript
详解JS中遍历语法的比较
2017/04/07 Javascript
Node.JS利用PhantomJs抓取网页入门教程
2017/05/19 Javascript
使用Nuxt.js改造已有项目的方法
2018/08/07 Javascript
微信小程序实现卡片左右滑动效果的示例代码
2019/05/01 Javascript
通过原生vue添加滚动加载更多功能
2019/11/21 Javascript
vue数据更新UI不刷新显示的解决办法
2020/08/06 Javascript
使用Python编写类UNIX系统的命令行工具的教程
2015/04/15 Python
python实现跨excel的工作表sheet之间的复制方法
2018/05/03 Python
python Tkinter版学生管理系统
2019/02/20 Python
python 获取微信好友列表的方法(微信web)
2019/02/21 Python
详解python和matlab的优势与区别
2019/06/28 Python
基于python+selenium的二次封装的实现
2020/01/06 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
python 非线性规划方式(scipy.optimize.minimize)
2020/02/11 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
Html5导航栏吸顶方案原理与对比实现
2020/06/10 HTML / CSS
创业计划书——互联网商机
2014/01/12 职场文书
村抢险救灾方案
2014/05/09 职场文书
十八大演讲稿
2014/05/22 职场文书
办公室文员岗位职责范本
2014/06/12 职场文书
党员学习中共十八大思想报告
2014/09/12 职场文书
2014年教师思想工作总结
2014/12/03 职场文书
爱心捐赠活动简讯
2015/07/20 职场文书
李白经典诗之一:全文无一“月”字,却句句有月
2019/07/12 职场文书