AngularJS 获取ng-repeat动态生成的ng-model值实例详解


Posted in Javascript onNovember 29, 2016

AngularJS 获取ng-repeat动态生成的ng-model值

              最近做项目遇到了ng-model是ng-repeat动态生成的,ng-model=”变量”,什么变量,是未知的,所以你无法在$scope."变量"取到值,就算取到值也是其中一个值,这样的问题,经过百度一番查找找到解决方案,这里记录下,也行可以帮助到大家。

代码

html

<div>
  <div class="modal-header">
    <h3 class="modal-title">用例集全局参数配置</h3>
  </div>
  <div class="modal-body">
    <table class="table table-hover">
      <thead>
      <tr>
        <th>参数</th>
        <th>参数值</th>
      </tr>
      </thead>
      <tbody ng-repeat="param in params">
      <tr>
        <td>{{param}}</td>
        <td><input name="test" class="form-control" type="text" ng-trim="false" ng-model="$parent.conf[$index]"/></td>
      </tr>
      </tbody>
    </table>


  </div>

  <div class="modal-footer">
    <button class="btn btn-primary" ng-click="ok()">
      应用
    </button>
    <button class="btn btn-warning" ng-click="cancel()">取消</button>
  </div>

</div>

JS

var ModalInstanceCtrl = function ($scope, $modalInstance, params) {
      $scope.params = params;
      $scope.conf = [];
      $scope.ok = function () {
        console.log($scope.conf);
        $modalInstance.close($scope.conf);
      };
      $scope.cancel = function () {
        $modalInstance.dismiss('cancel');
      };
    };

问题描述

因为ng-model是ng-repeat动态生成的,ng-model=”变量”,什么变量,是未知的,所以你无法在$scope."变量"取到值,就算取到值也是其中一个值,这个问题困扰了我一天,终于解决了。

解决方法

首先ng-model设置为$parent.conf[$index]:

  1. 用$parent的原因是ng-repeat产生的,他会为每一个input生成一个子scope对象,而$parent表示用父类的scope,这样我们在JS文件中才能取到该值。
  2. $index代表的意思是ng-repeat="param in params"遍历时的下标
  3. conf是我们在js中的变量名实际效果

我们在controller中定义了一个$scope.conf = [];就是一个数组,刚好通过上面的代码,为该数组添加了元素,然后我们通过scope.conf刚好把ng-model的所有元素自动保存了。

实际效果:

AngularJS 获取ng-repeat动态生成的ng-model值实例详解

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

Javascript 相关文章推荐
JavaScript 通过模式匹配实现重载
Aug 12 Javascript
基于jquery的模态div层弹出效果
Aug 21 Javascript
jquery实现树形二级菜单实例代码
Nov 20 Javascript
JavaScript常用字符串与数组扩展函数小结
Apr 24 Javascript
百度地图JavascriptApi Marker平滑移动及车头指向行径方向
Mar 13 Javascript
详解Webpack实战之构建 Electron 应用
Dec 25 Javascript
JS html事件冒泡和事件捕获操作示例
May 01 Javascript
js简单遍历获取对象中的属性值的方法示例
Jun 19 Javascript
微信小程序获取当前位置和城市名
Nov 13 Javascript
JS使用for in有序获取对象数据
May 19 Javascript
js实现鼠标切换图片(无定时器)
Jan 27 Javascript
vue组件的路由高亮问题解决方法
May 11 Vue.js
jQuery Easy UI中根据第一个下拉框选中的值设置第二个下拉框是否可以编辑
Nov 29 #Javascript
JavaScript获取服务器端时间的方法
Nov 29 #Javascript
微信小程序链接传参并跳转新页面
Nov 29 #Javascript
JavaScript中Array对象用法实例总结
Nov 29 #Javascript
完美解决jQuery fancybox ie 无法显示关闭按钮的问题
Nov 29 #Javascript
JavaScript构建自己的对象示例
Nov 29 #Javascript
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
Nov 29 #Javascript
You might like
php简单封装了一些常用JS操作
2007/02/25 PHP
discuz安全提问算法
2007/06/06 PHP
ThinkPHP模板判断输出Present标签用法详解
2014/06/30 PHP
网站防止被刷票的一些思路与方法
2015/01/08 PHP
PHP后端银联支付及退款实例代码
2017/06/23 PHP
Laravel推荐使用的十个辅助函数
2019/05/10 PHP
window.js 主要包含了页面的一些操作
2009/12/23 Javascript
TreeView 用法(有代码)(asp.net)
2011/07/15 Javascript
js设置控件的隐藏与显示的两种方法
2014/08/21 Javascript
js面向对象之静态方法和静态属性实例分析
2015/01/10 Javascript
使用JQuery FancyBox插件实现图片展示特效
2015/11/16 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
2016/01/28 Javascript
JS简单实现DIV相对于浏览器固定位置不变的方法
2016/06/17 Javascript
socket.io与pm2(cluster)集群搭配的解决方案
2017/06/02 Javascript
详解在vue-cli项目中使用mockjs(请求数据删除数据)
2017/10/23 Javascript
微信小程序把百度地图坐标转换成腾讯地图坐标过程详解
2019/07/10 Javascript
javascript实现简易聊天室
2019/07/12 Javascript
[40:53]完美世界DOTA2联赛PWL S3 Magma vs DLG 第二场 12.18
2020/12/20 DOTA
Python正确重载运算符的方法示例详解
2017/08/27 Python
python 操作hive pyhs2方式
2019/12/21 Python
Django 自定义权限管理系统详解(通过中间件认证)
2020/03/11 Python
详解Django配置JWT认证方式
2020/05/09 Python
海信商城:海信电视、科龙空调、容声冰箱官方专卖
2017/02/07 全球购物
澳洲Chemist Direct药房中文网:澳洲大型线上直邮药房
2019/11/04 全球购物
工程造价与财务管理专业应届生求职信
2013/10/06 职场文书
大学生学习2014全国两会心得体会
2014/03/13 职场文书
互联网创业计划书写作技巧攻略
2014/03/23 职场文书
优秀求职信
2014/05/29 职场文书
商铺消防安全责任书
2014/07/29 职场文书
超市仓管员岗位职责范本
2014/09/18 职场文书
实习证明格式范文
2014/10/14 职场文书
财务工作个人总结
2015/02/27 职场文书
React中的Context应用场景分析
2021/06/11 Javascript
Python&Matlab实现灰狼优化算法的示例代码
2022/03/21 Python
golang生成vcf通讯录格式文件详情
2022/03/25 Golang
MySQL数据库优化之通过索引解决SQL性能问题
2022/04/10 MySQL