[英]angularjs creating dynamic form elements
我有這樣的html元素:
<body ng-controller="addController">
<div class="col-sm-10">
<label class="control-label">tableName:</label>
<fieldset ng-repeat="tableName in tableNames">
<input type="text" class="form-control" ng-model="tableName.tableName" /><br />
</fieldset>
<button class="btn btn-default" ng-click="addNewTable()">Add tablename</button>
<input type="submit" ng-click="add()" />
</div>
<div>
<pre>{{tableNames|json}}</pre>
</div>
</body>
每次單擊按鈕時,此代碼都會生成一個文本框。
JS:
function addController($scope, $http) {
$scope.tableNames = [];
$scope.addNewTable = function (tableName) {
$scope.tableNames.push({});
}
}
當我顯示tableNames時,它給了我:
[{"tableName":"textboxvalue"},{"tableName":"textboxvalue"}];
但是我打算得到的輸出:
[{"tableName1":"textboxvalue","tableName2":"textboxvalue","tableName3":"textboxvalue"}];
為了獲得所需的輸出,我應該在設計上進行哪些更改。 提前致謝。
您每次都將對象推入數組,但是您想要在數組的對象中添加鍵值對。 嘗試這個
$scope.tableNames = [{}];
$scope.addNewTable = function (tableName) {
$scope.tableNames[0].tableName = "textboxvalue" ;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.