簡體   English   中英

如何在angularjs中為復選框存儲有效的ng-change事件

[英]How to store valid ng-change event for checkbox in angularjs

我有多個輸入文本復選框。 我想將更改框事件存儲在數組中,稍后用戶提交保存更改時,應該將其保存。

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

問題是,如果用戶切換復選框(開/關),則它不僅存儲最新條目,而且存儲兩個條目。

我試圖刪除重復項,但這也有一些問題。

任何人都可以幫助我,除非復選框的原始值已更改,如何將cehckbox值存儲在數組中。

這是我的朋克。 請看一下,如果您需要更多詳細信息,請告訴我。

https://plnkr.co/edit/ZE5xWhfpmbSXqflDs5Qv?p=預覽

只需將原始值存儲在單獨的屬性中。 然后與您的模型進行比較。

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;
    }

無需對輸入進行ng-change,因為它會觸發超出所需的范圍。 只需過濾數組以獲取更改的值就足夠了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM