Angular.js。 Ng模型的复选框

时间:2013-10-30 19:40:03

标签: angularjs

这是我的代码:

<input type="checkbox" ng-model="variable">

在这种情况下,根据复选框的状态,variable将为truefalse。我需要设置true / false而不是"+" / "-"。最简单的方法是什么? 感谢。

3 个答案:

答案 0 :(得分:7)

According to the docs,您应该使用ng-true-value和/或ng-false-value覆盖truefalse值:

<input type="checkbox" ng-model="variable" ng-true-value="+" ng-false-value="-">

答案 1 :(得分:2)

使用ng-click执行此操作。

<input type="checkbox" ng-model="variable" ng-click="check()">

在控制器中:

$scope.check = function() {
    $scope.selected = $scope.variable === true ? '+' : '-';
};

Live Plunker.

答案 2 :(得分:1)

只需在您的复选框模型上设置一个手表。

HTML:

<input type="checkbox" ng-model="isChecked">

JavaScript的:

// set initial value
$scope.isChecked = $scope.variable === '+';

// watch for changes to the checkbox model
$scope.$watch('isChecked', function(newVal) {
    $scope.variable = newVal ? '+' : '-';
};