recherche

Maison  >  Questions et réponses  >  le corps du texte

angular.js - angular怎么修改ng-repeat的ng-checked状态?

从后端获取数组如下:

$scope.arr = [
    {
        selected:true;
    }
    {
        selected:true;
    }
    {
        selected:true;
    }
]
$scope.select = function(){
    // 如何在不调用后端接口的情况下,修改ng-repeat中ng-checked的状态实现全选和反选?
    
}

<ul>
    <li ng-repeat="i in arr">
        <input type="checkbox" ng-checked="i.selected">
    </li>
</ul>

<input type="checkbox" ng-click="select()">



漂亮男人漂亮男人2744 Il y a quelques jours1065

répondre à tous(3)je répondrai

  • 给我你的怀抱

    给我你的怀抱2017-05-15 17:05:50

    $scope.selectedAll = true;
    
    $scope.arr = [
        {
            selected:true;
        }
        {
            selected:true;
        }
        {
            selected:true;
        }
    ]
    $scope.select = function(){
        $scope.selectedAll = !$scope.selectedAll;
        $scope.arr.forEach(function(item){
            item.selected = $scope.selectedAll;
        });
    };

    répondre
    0
  • 为情所困

    为情所困2017-05-15 17:05:50

    $scope.arr = [
        { selected:true }
        { selected:true }
        { selected:true }
    ];
    
    $scope.select = function(status){
        $scope.arr.map(function(item){
            item.selected = status === 'all'? true: !item.selected;
        });
    }
    
    <ul>
        <li ng-repeat="i in arr">
            <input type="checkbox" ng-checked="i.selected">
        </li>
    </ul>
    
    <button ng-click="select('all')">全选</button>
    <button ng-click="select('inverse')">反选</button>
    

    La sélection inverse ici signifie que lorsque tous ne sont pas sélectionnés, le sélectionné devient désélectionné, et le non sélectionné devient sélectionné, pas effacé ! ! !
    Le dédouanement est un peu plus compliqué.

    répondre
    0
  • 某草草

    某草草2017-05-15 17:05:50

    http://stackoverflow.com/questions/12648466/how-can-i-get-angular-js-checkboxes-with-select-unselect-all-functionity-and-i

    répondre
    0
  • Annulerrépondre