我正在创建一个网络应用,当用户点击切换按钮'yes'
时,如果用户点击两次$scope
变量,我将使用切换按钮'no'
变量应存储在$scope
变量
这是我的切换按钮编码
<div class="switch">
<input ng-click="clickcheckbox()" id="cmn-toggle-1" class="cmn-toggle cmn-toggle-round" type="checkbox">
<label for="cmn-toggle-1"></label>
</div>
我已经ng-click
,因为我无法使用ng-checked
这是我的控制器
$scope.clickcheckbox=function(){
//if user check the checkbox
$scope.check='yes';
//if user uncheck the checkbox
$scope.check='no';
}
如果还有其他更好的方法(请帮我解决)
答案 0 :(得分:1)
您可以使用以下代码:
HTML
<input type="checkbox" ng-model="checkboxModel.value2"
ng-true-value="'YES'" ng-false-value="'NO'">
的javascript:
$scope.checkboxModel = {
value2 : 'YES'
};
其中:
ngTrueValue : The value to which the expression should be set when selected.
ngFalseValue : The value to which the expression should be set when not selected.
答案 1 :(得分:0)
以下代码应该有效。
$scope.clickcheckbox = function() {
if($scope.check == undefined || $scope.check = 'no') {
$scope.check = 'yes';
} else {
$scope.check = 'no';
}
}
作为旁注,处理复选框和布尔值的常用方法是执行以下操作:
<input type="checkbox" ng-click="check = !check">
此处,每次点击都会恢复true
和false
之间的值。
答案 2 :(得分:0)
试试这个:
$scope.clickcheckbox=function(){
$scope.check=='yes'? $scope.check='no': $scope.check='yes';
}
Inh HTML:
<div class="switch" ng-init="check='yes'">
<input ng-click="clickcheckbox()" id="cmn-toggle-1" class="cmn-toggle cmn-toggle-round" type="checkbox">
<label for="cmn-toggle-1">{{check}}</label>
</div>