Javascript 选中加载时的复选框
从数据库加载所有主题后,我需要为特定用户选择主题。我该怎么做Javascript 选中加载时的复选框,javascript,angularjs,Javascript,Angularjs,从数据库加载所有主题后,我需要为特定用户选择主题。我该怎么做 <div ng-repeat="item in topicEditItems"> <md-checkbox ng-checked="existsEditTopic(item, topicEditSelected);" ng-click="toggleEditTopic(item, topicEditSelected);" value="{{item.TopicID}}"> {{item.
<div ng-repeat="item in topicEditItems">
<md-checkbox ng-checked="existsEditTopic(item, topicEditSelected);" ng-click="toggleEditTopic(item, topicEditSelected);" value="{{item.TopicID}}">
{{item.TopicName}}
</md-checkbox>
</div>
$scope.topicEditSelected = [];
adminService.getTopics().then(function (response) {
$scope.topicEditItems = $.parseJSON(response.data);
//Select topics
})
$scope.toggleEditTopic = function (item, list) {
var idx = list.indexOf(item);
if (idx > -1) {
list.splice(idx, 1);
}
else {
list.push(item);
}
};
$scope.existsEditTopic = function (item, list) {
return list.indexOf(item) > -1;
};
{{item.TopicName}
$scope.topicEditSelected=[];
adminService.getTopics().then(函数(响应){
$scope.topicedittitems=$.parseJSON(response.data);
//选择主题
})
$scope.toggleEditTopic=函数(项,列表){
var idx=列表索引(项目);
如果(idx>-1){
拼接列表(idx,1);
}
否则{
列表。推送(项目);
}
};
$scope.existsEditTopic=函数(项目,列表){
返回列表。indexOf(项目)>-1;
};
更新$scope.existsEditTopic
至
$scope.existsEditTopic = function (item, list) {
var index = list.indexOf(item);
if(index > -1){
return true;
}else{
return false;
}
};
最简单的方法是让2个复选框模仿原来的1,然后根据过滤器显示和隐藏。您可能需要将md复选框样式应用到假样式中
<input type="checkbox" class="check" aria-label="Cb user"
ng-model="cbFake" ng-if="isTopicExist(item.id)" ng-checked="isTopicExist(item.id)"/>
<md-checkbox ng-checked="exists(item, selected)" ng-click="toggle(item, selected)" aria-label="Cb user"
ng-model="cbOri" ng-if="!isTopicExist(item.id)"> </md-checkbox>
那么什么是合适的呢?谢谢。你确定这样行吗。用户必须有能力勾选不同的框,我已经有功能为ng选中。如果我有四个不同的主题,并且对于这个用户,在数据库中选择了其中的两个主题,也请检查此链接。如何在加载时选中这两个复选框。从数据库获取值后,执行相同的操作。