使用angularJS在另一个视图中获取选中值

使用angularJS在另一个视图中获取选中值,angularjs,Angularjs,我有一个带有按钮submit的复选框列表,当我单击submit时,我必须在其他视图表中获取所有选中的值。我找到了很多答案,但他们都建议在同一个视图中获取值,但我需要在其他视图中获取值(ajoffactadmin2),请问我如何才能做到这一点。代码如下: ajafactadmin2.html <div class="row" ng-repeat="x in namesF3"> <div class="col"><input type="check

我有一个带有按钮submit的复选框列表,当我单击submit时,我必须在其他视图表中获取所有选中的值。我找到了很多答案,但他们都建议在同一个视图中获取值,但我需要在其他视图中获取值(ajoffactadmin2),请问我如何才能做到这一点。代码如下:

ajafactadmin2.html

<div class="row" ng-repeat="x in namesF3">

          <div class="col"><input type="checkbox" name="" ng-modal="x.selected" ng-checked="exist(x)" ng-click="toggleSelection(x)" ng-true-value="'{{x.CodeEnvoiColis}}'" ng-false-value="''" id="'{{x.CodeEnvoiColis}}'"></div>
          <div class="col" >{{x.CodeEnvoiColis}}</div>   
          <div class="col" width="20%">{{x.StatutColis}}  </div>
          <div class="col" width="20%">{{x.VilleDestColis}}</div> 

</div>

<div class="selectedcontent">
            <h3> Selected Names </h3>
            <p ng-repeat = "selectedName in selected"> {{selectedName.CodeEnvoiColis}} </p>
</div>
          <a class="button button-info"   ng-click="toggleSelection(x)"  href="#/ajoutFactAdmin2" style="background-color:#1627C0;float: right;">Ajouter</a> 

实现这一点的方法主要有三种

  • 本地存储/会话存储:
  • 工厂/服务
  • $rootScope
  • $rootScope.tempData=YourData


    我更喜欢使用localstorage选项,因为如果您刷新浏览器,则使用factory或$rootscope存储的数据将消失。

    使用
    $rootscope
    谢谢,我是否应该使用$rootscope替换每个$scope?请尝试使用一些存储,如本地或会话或服务扫描您exlpain我该怎么做,我如何在我的.html文件中调用这个存储,我应该输入什么值,因为我在代码中只有一个“push”而没有保存数据。谢谢你,汉克斯,我是用rootScope做的。谢谢
    $scope.selected = [];
               $scope.namesF3 = [];
              $scope.exist = function(item){
                return $scope.selected.indexOf(item) > -1;
              }
    
              $scope.toggleSelection = function(item){
                 var x = [];
                var idx = $scope.selected.indexOf(item);
                if(idx > -1){
                     $scope.selected.splice(idx, 1);
                }
                 else{
                     $scope.selected.push(item);
                 }
    
              }
    
    To set value in local storage:
    
    localStorage.setItem("key","value");
    
    To get value:
    
    localStorage.getItem("key");
    
    angular.module('app').factory('tempStorageService',function(){
      var data={};
      return{
        setData:function(tempData){
          data=tempData;
        },
        getData:function(){
          return data;
        }
      }
    })