<input>
ユーザーが新しい項目を入力したいときに行を動的に追加したい状況があります。以下に示すように、ユーザーが [入力項目の追加] ボタンをクリックすると、ユーザーがテキストを追加できる新しい入力要素が追加されます。
$scope.items
の各入力要素値をモデル(配列)に関連付けようとしていますapp.js
。私のでは、を使用してindex.html
をロードします。私が理解していないのは、各入力/行を として定義されたモデルによって自動的に追加および管理する方法です。$scope.items
ng-repeat
$scope.items
各入力要素を配列に関連する ng-model にマップすることは可能items
ですか? または、この状況でディレクティブを使用する必要がありますか?
完全なコードとランタイムは、ここの Plunker にあります(奇妙な出力を表示できるようにするため)。
からのスニペットindex.html
:
<body ng-controller="MainCtrl">
<button ng-click="addInputItem()">+ Add Input Item</button>
<div ng-repeat="item in items">
<input ng-model="items" type="text" value="{{item}}" size="40">
</div>
<pre>items = {{items | json}}</pre>
</body>
app.js
コード:
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.items = ['First Item', 'Second Item'];
$scope.addInputItem = function() {
$scope.items.push('');
};
});