0
我有一個表單,具有'屬性'部分。用戶可以根據他/她想要添加儘可能多的屬性:AngularJS - 創建和檢索動態創建的表單
HTML:
<h4>
Attributes:
<input type="button" value="+" id="new_obj_att_add" ng-click="addNewChoice()">
</h4>
<div class="form-group" ng-repeat="attribute in attributes">
<input type="text" ng-model="att_name" placeholder="Attribute Name">
<input type="text" ng-model="att_value" placeholder="Attribute Value">
<hr>
</div>
JS:
$scope.attributes = [{id: 1}];
$scope.addNewChoice = function() {
var newItemNo = $scope.attributes.length+1;
$scope.attributes.push({'id': newItemNo});
};
現在,該代碼奇妙的作品爲動態增長的形式。但是,我需要將表單數據傳回我的控制器。正如你所看到的,每個屬性都會有相同的ng模型,所以我不能從那裏獲取它。
1)有沒有一種方法可以使用每個屬性的ID(即attr_name_1,attr_name_2)動態分配ng模型名稱,然後在我的AngularJS公式中循環這些元素並收集這些值?
2)如果我要在AngularJS中再次引用它們,我是不是以正確的方式創建這些元素?
在此先感謝您的幫助!
這很有道理。我如何在JS中引用它?假設我從printAttributes(attributes)的HTML調用一個函數,我不知道如何遍歷該屬性列表並獲取名稱/值。 – ev0lution37
這些屬性位於'$ scope.attributes'中,您可以按照與添加新屬性完全相同的方式訪問它們。對於循環,你可以使用'angular.forEach'。 –
啊,完美。萬分感謝。 – ev0lution37