AngularJS ng-repeat下使用ng-model
如图所示,想要实现点击确定修改后,得到input中的值,因此尝试用下面的代码实现:
<tr ng-repeat="item in info ">
<input type="text" ng-show="aa && item.uId==index" ng-value="item.uName" ng-model="modifName">
<input type="text" ng-show="aa && item.uId==index" ng-value="item.uPwd" ng-model="modifPwd">
</tr>
通过在repeat里给每一个input绑定ng-model,当点击修改按钮后,将输入input的新值,分别用两个变量modifName、modifPwd接收.但是结果console出来都是undefined,为什么
原因:
如果,你对angularJs的$scope,有深入了解,也许这个问题就迎刃而解了。原因就在,ng-repeat、ng-switch、ng-view、ng-include都会创建一个新的子scope,所以问题经常在这些指令中出现。
进行原型继承即意味着父作用域在子作用域的原型链上,这是JavaScript的特性。AngularJS的作用域还存在如下内部定义的关系:
scope. parent指向scope的父作用域;scope. childHead指向scope的第一个子作用