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 相关文章推荐
escape、encodeURI 和 encodeURIComponent 的区别
Mar 02 Javascript
js或css实现滚动广告的几种方案
Jan 28 Javascript
基于jQuery的仿flash的广告轮播代码
Nov 04 Javascript
form表单中去掉默认的enter键提交并绑定js方法实现代码
Apr 01 Javascript
JavaScript合并两个数组并去除重复项的方法
Jun 13 Javascript
浅析javascript中的事件代理
Nov 06 Javascript
Bootstrap select实现下拉框多选效果
Dec 23 Javascript
Vue中fragment.js使用方法详解
Mar 09 Javascript
JS去掉字符串前后空格、阻止表单提交的实现代码
Jun 08 Javascript
基于require.js的使用(实例讲解)
Sep 07 Javascript
javascript实现前端input密码输入强度验证
Jun 24 Javascript
JS实现京东商品分类侧边栏
Dec 11 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
PHP编程过程中需要了解的this,self,parent的区别
2009/12/30 PHP
preg_match_all使用心得分享
2014/01/31 PHP
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
2014/09/27 PHP
腾讯微博提示missing parameter errorcode 102 错误的解决方法
2014/12/22 PHP
PHP附件下载中文名称乱码的解决方法
2015/12/17 PHP
Yii2框架BootStrap样式的深入理解
2016/11/07 PHP
php自定义时间转换函数示例
2016/12/07 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
小议javascript 设计模式 推荐
2009/10/28 Javascript
IE下通过a实现location.href 获取referer的值
2014/09/04 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
2015/03/12 Javascript
JavaScript测试工具之Karma-Jasmine的安装和使用详解
2015/12/03 Javascript
javascript特殊日历控件分享
2016/03/07 Javascript
js 将图片连接转换成base64格式的简单实例
2016/08/10 Javascript
微信小程序tabBar模板用法实例分析【附demo源码下载】
2017/11/28 Javascript
Vue三层嵌套路由的示例代码
2018/05/05 Javascript
使用vue-cli打包过程中的步骤以及问题的解决
2018/05/08 Javascript
如何写好一个vue组件,老夫的一年经验全在这了(推荐)
2019/05/18 Javascript
vue-cli3中vue.config.js配置教程详解
2019/05/29 Javascript
JointJS JavaScript流程图绘制框架解析
2019/08/15 Javascript
Vue实现商品详情页的评价列表功能
2019/09/04 Javascript
小程序如何定位所在城市及发起周边搜索
2020/02/11 Javascript
详解node和ES6的模块导出与导入
2020/02/19 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
JavaScript this关键字指向常用情况解析
2020/09/02 Javascript
解决vue侦听器watch,调用this时出现undefined的问题
2020/10/30 Javascript
Webpack3+React16代码分割的实现
2021/03/03 Javascript
python翻译软件实现代码(使用google api完成)
2013/11/26 Python
Python字典,函数,全局变量代码解析
2017/12/18 Python
使用 Python 读取电子表格中的数据实例详解
2020/04/17 Python
Python调用REST API接口的几种方式汇总
2020/10/19 Python
党支部承诺书范文
2014/03/28 职场文书
摩登时代观后感
2015/06/03 职场文书
毕业设计工作总结
2015/08/14 职场文书
导游词之西安骊山
2019/12/03 职场文书
PyTorch 如何自动计算梯度
2021/05/23 Python