2017-10-13 38 views
0

我的代码app.js:与对象阵列离子清单 - 如果复选框被选中如何dertermine

jt.controller('TheorieCtrl', function($scope, $window, $ionicPlatform) { 
// .log($window.localStorage); 
// Ready functions 
if ($window.localStorage.getItem('themen') === null) { 
    $scope.themen = [{ 
     name: "Setting1", 
     checked: false 
    }, { 
     name: "Setting2", 
     checked: false 
    } 
    ]; 
} else { 
    $scope.themen = JSON.parse($window.localStorage['themen']); 
}; 

$scope.updateThemaLocalStorage = function(items) { 
    $window.localStorage['themen'] = JSON.stringify(items); 
}; 

});

我的html代码:

<ion-list> 
    <ion-checkbox ng-repeat="thema in themen track by $index" class="checkbox-positive item-checkbox-right" type="checkbox" id="{{thema.id}}" ng-model="thema.checked" ng-change="updateThemaLocalStorage(themen)"> 
     {{ thema.name }}    
    </ion-checkbox> 
</ion-list> 

在其他控制器我想,以确定是否设定1被选中。 它是这样的: if($ scope.thema.Setting1.checked){“do something”} 但这不起作用。我只需要帮助这个语法。

我想这是一个绝对新手的问题。对不起,我真的搜查了很多东西。

+0

不应'如果($ scope.thema.Setting1.checked){ “做一些事情”}'是'如果($范围。 thema [0] .name.checked){“do something”}'如果数组永远不会改变。 – alphapilgrim

+0

感谢您的回复!它说:“不能读取属性'0'undefined” –

+0

好吧,错误属性0解决了,现在如果我看着$ scope.thema在日志中,它看起来像这样:0:{name:“SanftesIntervall”,checked:true} 1:{name:“IrgendeinSetting”,checked:false} –

回答

0

我认为你应该改变查找。如果数组永远不会改变。

电流:

if($scope.thema.Setting1.checked){ "do something" } 

预期:

if($scope.thema[0].name.checked){ "do something" } 
相关问题