2016-07-23 5 views
0

複数の入力テキストチェックボックスがあります。変更ボックスのイベントを配列に保存し、後でユーザーが変更を保存したときに保存する必要があります。anglejsにチェックボックスの有効な変更イベントを格納する方法

<td><input type="checkbox" class="switch" ng-model="each_value.at_enable_flag" ng-change="changeMyArray(each_value)"> </td> 

この問題は、チェックボックス(オン/オフ)を切り替えると、最新のものだけでなく、両方の項目が保存されることになります。

重複を削除しようとしましたが、それでも問題が発生しています。

チェックボックスの元の値が変更された場合に限り、cehckboxの値を配列に格納する方法を教えてください。

ここは私のplunkrです。私は詳細を必要とするかどうかを見て、私に知らせてください。

https://plnkr.co/edit/ZE5xWhfpmbSXqflDs5Qv?p=preview

答えて

0

単に別のプロパティに元の値を格納します。その後、あなたのモデルと比較してください。あなたのコードで

https://plnkr.co/edit/IAOUhH7tekTzl15uFi8N?p=preview

$scope.toTemplate.forEach(function (value) { 
     value.default = value.at_enable_flag; 
    }); 

    $scope.myArray = []; 

    $scope.saveAtData = function() { 
     $scope.myArray = $scope.toTemplate.filter(function (value) { 
     return value.default !== value.at_enable_flag; 
     }); 

     console.log($scope.myArray); 
     $scope.saveValue = $scope.myArray; 
    } 

入力時に変更する必要はありません。これは、必要以上に発生するためです。変更された値を配列にフィルタリングするだけで十分です。

+0

リベンジdownvote、行く方法。 – sielakos

+0

これは私の目的を解決すると思います。助けてくれてありがとう@sielakos。 – undefined

関連する問題