这是我的问题
我正在尝试使用全局切换来使表单切换基本使用ng-model进行检查和取消选中。
$scope.globalToggle =
{
"toggle": true
}
$scope.Toggles =
{
"toggle1": true,
"toggle2": true,
"toggle3": true,
}
这是我试图有效实现的目标:
目前,我已经设法使用了一个很长的作用域函数,并向每个复选框元素添加了ng-click来实现此目的,但是我希望有一些更好的方法来实现我的目标,而我不必使用ng单击我的元素。在使用ng-model从DOM更改变量的情况下,这两个变量之间是否可能存在绑定关系,可以根据条件更改其值?
答案 0 :(得分:1)
在这里您可以轻松地完成所需的操作:) 您只需要在切换上放置ng-click指令并编写算法 基本上是:
globalToggleClicked = function() {
for (var toggle in $scope.Toggles) {
if ($scope.globalToggle.toggle == true)
$scope.Toggles[toggle] = true;
else
$scope.Toggles[toggle] = false;
}
};
toggleClicked = function(toggle){
if (toggle == false)
$scope.globalToggle.toggle = false;
else if (toggle == true) {
var nbChecked = 0;
for (var t in $scope.Toggles) {
if ($scope.Toggles[t] == true)
nbChecked++;
}
if (Object.keys($scope.Toggles).length == nbChecked)
$scope.globalToggle.toggle = true;
}
};
我知道它是ng-click的,但是您实际上没有其他方法可以做到