2016-05-04 20 views
3

でNG-オプションと入力フィールドにデータを入力する -は、私は私の角度jsのコントローラで次の配列を持つ角度JS

$scope.Data = [ 

    {Day: 'Monday', Start: '10.00', Finish: '15.30'}, 
    {Day: 'Tuesday', Start: '10.00', Finish: '16.30'}, 
    {Day: 'Tuesday', Start: '10.00', Finish: '12.30'}, 

    ] 
$scope.overTime = 0; 

私の見解では、私はこのように、この配列をループしています:

<div ng-repeat="a in Data track by $index"> 
    <strong> {{a.Day}} 
    <input ng-model="a.Start"/> 
    <input ng-model="a.Finish/> 
    <span> Add over Time </span> 
    <input type=""text" placeholder="Add overtime" ng-model="addovertime"\> 

    </div> 

すべてが正常に正常に動作していますが、唯一の問題は残業入力フィールドを追加することです。あなたが私のコードで見ることができるように、ユーザーは、月曜日に超過時間を追加する必要がある場合、月曜日の残業入力に入力したものは、火曜日と水曜日の超過時間にも表示されます逆も同様です。これは、私が残業にデータをバインドしているからです。多分私は本当に確かではないが、どうすればこのように達成するだろうか? ありがとう

答えて

3

これは、オーバータイムをデータ項目ではなくスコープ変数に保存するためです。 、各項目ごとに個別に残業保管行うには:この貫通

<input type="text" placeholder="Add overtime" ng-model="a.overtime"> 
+0

ああ、私が見別々のスコープを作成します!ありがとうございました ! – 1future

1

ゴー、各残業

var jimApp = angular.module("mainApp", []); 
 

 
jimApp.controller('mainCtrl', function($scope){ 
 
     $scope.Data = [ 
 

 
    {Day: 'Monday', Start: '10.00', Finish: '15.30'}, 
 
    {Day: 'Tuesday', Start: '10.00', Finish: '16.30'}, 
 
    {Day: 'Tuesday', Start: '10.00', Finish: '12.30'}, 
 

 
    ]; 
 
    $scope.overTime = 0; 
 
}); 
 

 

 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="mainApp" ng-controller="mainCtrl"> 
 
    <div ng-repeat="a in Data track by $index"> 
 
    <strong> {{a.Day}}</strong> 
 
    <input ng-model="a.Start"/> 
 
    <input ng-model="a.Finish"/> 
 
    <span> Add over Time </span> 
 
    <input type="text" placeholder="Add overtime" ng-model="a.addovertime" > 
 

 
    </div> 
 
</div>

+0

ありがとう..これも正しい – 1future

関連する問題