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 相关文章推荐
图片自动缩小 点击放大
Jul 07 Javascript
jquery.post用法之type设置问题
Feb 24 Javascript
常见的原始JS选择器使用方法总结
Apr 09 Javascript
JavaScript模拟深蓝vs卡斯帕罗夫的国际象棋对局示例
Apr 22 Javascript
jQuery点击改变class并toggle及toggleClass()方法定义用法
Dec 11 Javascript
JS实现重新加载当前页面
Nov 29 Javascript
基于vue实现多引擎搜索及关键字提示
Mar 16 Javascript
JS中关于正则的巧妙操作
Aug 31 Javascript
JS插件clipboard.js实现一键复制粘贴功能
Dec 04 Javascript
jQuery实现的五星点评功能【案例】
Feb 18 jQuery
谈谈JavaScript中的垃圾回收机制
Sep 17 Javascript
JavaScript 反射学习技巧
Oct 16 Javascript
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
espresso double下 咖啡粉超细时 饼压力对咖啡的影响
2021/03/03 冲泡冲煮
php中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
使用PHP免费发送定时短信的实例
2016/10/24 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
Laravel框架实现的rbac权限管理操作示例
2019/01/16 PHP
PHP DB 数据库连接类定义与用法示例
2019/03/11 PHP
PHP7 安装event扩展的实现方法
2019/10/08 PHP
Laravel5.1 框架控制器基础用法实例分析
2020/01/04 PHP
新鲜出炉的js tips提示效果
2011/04/03 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
2014/03/12 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
javascript快速排序算法详解
2014/09/17 Javascript
js跨域问题浅析及解决方法优缺点对比
2014/11/08 Javascript
jQuery中not()方法用法实例
2015/01/06 Javascript
原生js实现的贪吃蛇网页版游戏完整实例
2015/05/18 Javascript
jQuery处理图片加载失败的常用方法
2015/06/08 Javascript
JS+CSS实现分类动态选择及移动功能效果代码
2015/10/19 Javascript
基于socket.io+express实现多房间聊天
2016/03/17 Javascript
JS实现AES加密并与PHP互通的方法分析
2017/04/19 Javascript
分析JS单线程异步io回调的特性
2017/12/01 Javascript
讲解Python中的递归函数
2015/04/27 Python
快速了解Python中的装饰器
2018/01/11 Python
Python数据预处理之数据规范化(归一化)示例
2019/01/08 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
2019/04/27 Python
Python中print函数简单使用总结
2019/08/05 Python
python集合的创建、添加及删除操作示例
2019/10/08 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
2020/05/22 Python
法学专业个人求职信
2013/09/26 职场文书
酒店应聘自荐信
2013/11/09 职场文书
5.1手机促销活动
2014/01/17 职场文书
火车的故事教学反思
2014/02/11 职场文书
《曹刿论战》教学反思
2014/03/02 职场文书
2015年世界环境日活动方案
2015/05/05 职场文书
学校安全管理制度
2015/08/06 职场文书
电力安全学习心得体会
2016/01/18 职场文书
教你如何使用Python开发一个钉钉群应答机器人
2021/06/21 Python