Angular动态添加、删除输入框并计算值实例代码


Posted in Javascript onMarch 29, 2017

Angular动态添加、删除输入框并计算值实例代码

摘要: 在学习群中交流时,有人分享了一个动态添加输入框的方法,我在其基础上进行了一些改进

这个功能本身并不复杂,但还是要注意,每个ng-model的对象必须是不同的,这样才能把它们分隔开。

下面是完整代码:

JS:

angular.module("myApp",[])
 .controller("inputController",function($scope){
    $scope.items=[];  //初始化数组,以便为每一个ng-model分配一个对象
    var i=0;
    $scope.getResult=function(){   //计算输入框的总值
      var result=0;
      angular.forEach($scope.items,function(item,key){
        result+=parseInt($scope.items[key]);
      })
      $scope.result=result;
    }

    $scope.Fn= {
      add: function () {     //每次添加都要给items数组的长度加一
        $scope.items[i] = 0;
        i++;
      },
      del: function (key) {   //每次删除一个输入框都后要让i自减,否则重新添加时会出bug
        console.log(key);
        $scope.items.splice(key, 1);
        i--;
        $scope.getResult();  //每次删除时得重新计算总值
      }
    }

  })

HTML:

<body ng-controller="inputController">
  <div ng-repeat="(key,item) in items track by $index">  <!-- 借助track by $index进行循环-->
     <input ng-model="items[key]"/><button ng-click="Fn.del(key)">删除</button>
  </div>

{{result}}
<button ng-click="Fn.add()">Add</button>
  <button ng-click="getResult()">Result</button>
</body>

应该没有什么bug。但如果有什么更漂亮的做法,恳请大神分享一下,因为我知道这样写并不是很优雅。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
修改jQuery.Autocomplete插件 支持中文输入法 避免TAB、ENTER键失效、导致表单提交
Oct 11 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
Sep 09 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
May 06 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
Nov 04 Javascript
将鼠标焦点定位到文本框最后(代码分享)
Jan 11 Javascript
vuejs使用FormData实现ajax上传图片文件
Aug 08 Javascript
AngularJS 的$timeout服务示例代码
Sep 21 Javascript
解决vue打包项目后刷新404的问题
Mar 06 Javascript
vue下载excel的实现代码后台用post方法
May 10 Javascript
使用p5.js临摹动态图形
Oct 23 Javascript
JS实现横向轮播图(初级版)
Jun 24 Javascript
深入理解webpack process.env.NODE_ENV配置
Feb 23 Javascript
JS变量及其作用域
Mar 29 #Javascript
如何使用Bootstrap 按钮实例详解
Mar 29 #Javascript
Vue 2.0 服务端渲染入门介绍
Mar 29 #Javascript
vue2组件实现懒加载浅析
Mar 29 #Javascript
整理关于Bootstrap排版的慕课笔记
Mar 29 #Javascript
如何使用Bootstrap创建表单
Mar 29 #Javascript
Bootstrap 响应式实用工具实例详解
Mar 29 #Javascript
You might like
mayfish 数据入库验证代码
2010/04/30 PHP
利用“多说”制作留言板、评论系统
2015/07/14 PHP
YUI 读码日记之 YAHOO.util.Dom - Part.1
2008/03/22 Javascript
eval的两组性能测试数据
2012/08/17 Javascript
javascript中HTMLDOM操作详解
2014/12/11 Javascript
深入学习JavaScript中的原型prototype
2015/08/13 Javascript
js调出上下文菜单的实例
2015/12/17 Javascript
jQuery实现下拉框左右移动(全部移动,已选移动)
2016/04/15 Javascript
Backbone中View之间传值的学习心得
2016/08/09 Javascript
JavaScript+HTML5实现的日期比较功能示例
2017/07/12 Javascript
实例讲解Vue.js中router传参
2018/04/22 Javascript
Angular异步变同步处理方法
2018/08/13 Javascript
微信小程序使用swiper组件实现层叠轮播图
2018/11/04 Javascript
原生js实现each方法实例代码详解
2019/05/27 Javascript
layui 表格操作列按钮动态显示的实现方法
2019/09/06 Javascript
jstree中的checkbox默认选中和隐藏示例代码
2019/12/29 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
python实现爬取千万淘宝商品的方法
2015/06/30 Python
Python实现二叉树结构与进行二叉树遍历的方法详解
2016/05/24 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
2017/12/20 Python
Python获取当前公网ip并自动断开宽带连接实例代码
2018/01/12 Python
numpy.transpose对三维数组的转置方法
2018/04/17 Python
python os.path模块常用方法实例详解
2018/09/16 Python
python清除字符串前后空格函数的方法
2018/10/21 Python
Django框架中序列化和反序列化的例子
2019/08/06 Python
python实现简单学生信息管理系统
2020/04/09 Python
如何用python免费看美剧
2020/08/11 Python
使用CSS3编写类似iOS中的复选框及带开关的按钮
2016/04/11 HTML / CSS
传统HTML页面实现模块化加载的方法
2018/10/15 HTML / CSS
zooplus意大利:在线宠物商店
2019/08/07 全球购物
共产党员公开承诺书范文
2014/03/28 职场文书
气象学专业个人求职信
2014/04/22 职场文书
最美乡村医生事迹材料
2014/06/02 职场文书
践行三严三实心得体会
2014/10/13 职场文书
《我和小伙伴》教学反思
2016/02/20 职场文书
java版 简单三子棋游戏
2022/05/04 Java/Android