输入的动态ng模型无法在控制器

时间:2017-09-23 10:44:40

标签: javascript angularjs

我有一个data数组,我想在我的控制器中动态创建$scope变量并分配数组的值。之后在我看来我想在ng-model中访问这些变量,名称应该像控制器一样动态创建。但我不能得到这些价值观。如果我静态地写这些ng-model名称它的工作,但当我试图连接名称时它不起作用。
如果有人可以帮助我非常感谢提前。

在控制器中

$scope.data = [ {id:2, Name:'jon'}, {id:3, Name:'XXXXX'}, {id:4,Name:'NNNN'} ];  
for(var V in $scope.data){  
   $scope['value'+V. id] = V.Name;  
}

$scope.update = function(){
  for(var V in $scope.data){  
     console.log($scope['value'+V. id]);  
  }
}

在视图中

<ul>  
   <li ng-repeat='V in data'>  
      <input type="text" ng-model="value[V.id]"/>
   </li>
<ul>
<button ng-click="update()">update</button>

1 个答案:

答案 0 :(得分:0)

试试这个。然后您可以获取更新的对象并发送到数据库。

控制器:

$scope.data = [ {id:2, Name:'jon'}, {id:3, Name:'XXXXX'}, {id:4,Name:'NNNN'} ];

HTML:

<ul>  
   <li ng-repeat='V in data'>  
      <input type="text" ng-model="V.Name"/> {{V.Name}}
   </li>
<ul>
<button ng-click="update()">update</button>