2015-09-11 41 views
2

如何在Angular中創建動態ng模型?我試過了,但我想我很難讓它運行。我所得到的是未定義的。這是我的代碼。如何在Angular中創建動態ng模型

<input type="text" class="form-control input-sm" ng model="teller[value.teller_id]" value="<% value.mac_address %>"> 

我打算有一個ng模型,它具有相同的名稱,但只是按編號進行更改。我有一個對象,保存從1-4的數字。這是value.teller_id。我想把它作爲teller1,teller2,teller3(teller [value.teller_id]等等)附加到ng模型中。它由ng-repeat循環,我沒有任何問題,而是創建了動態ng模型,換號將產生取消定義。

ng model="teller[value.teller_id]" <---- doesn't work 

我想才達到teller1,teller2等。

謝謝!

+1

爲什麼你不想使用'NG-repeat'?它做同樣的事情 –

+0

我從一個對象獲得的數據實際上並不是1,2,3,4,他們改變了。我需要從我得到的對象中引用它,因爲它也是主鍵。 – drake24

回答

2

是的,我們可以動態生成NG-型號名稱。

var app = angular.module('myApp', []); 
 

 
app.controller('MainCtrl', function($scope) { 
 
    $scope.teller = {}; 
 
    $scope.name = [{ 
 
    "id":1 
 
    },{ 
 
    "id":2 
 
    }] 
 
});
<!DOCTYPE html> 
 
<html ng-app="myApp"> 
 

 
    <head> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.28/angular.min.js"></script> 
 
    <link rel="stylesheet" href="style.css"> 
 
    <script src="script.js"></script> 
 
    </head> 
 

 
    <body ng-controller="MainCtrl"> 
 
    <div ng-repeat="x in name"> 
 
     <input type="text" ng-model="teller[x.id]" /> 
 
    </div> 
 
    <pre>{{teller | json}}</pre> 
 
    </body> 
 

 
</html>

希望它爲你的情況:)

+0

傑出!你讓它更容易理解@Thinker – drake24