我正在尝试创建一个复选框,当控制器中的值被填充时应该勾选(!= null)。 它也需要能够被打开,但我无法让它工作:
<input type='checkbox'
ng-false-value="''"
ng-model="entry[element.propertyName]"
id="q{{element.id}}"
ng-checked="entry[element.propertyName] != ''"
>
当条目[element.propertyName]被填充时,勾选复选框,到目前为止一切顺利。但是当我取消勾选复选框时,模型保持不变,即使我设置了ng-false-value,'selected = selected'属性也不会消失。当我再次勾选并取消勾选时,模型开始变为true并且''
应该是世界上最简单的事情,我在这里缺少什么?
我正在使用Angular 1.3.11
答案 0 :(得分:1)
我不知道你为什么使用ng-false-value,之前从未见过。 这是一个带有按钮更新复选框的片段。
function testCtrl($scope){
// Initialise the checkbox as unckecked
$scope.testIsChecked=false;
// This function makes the checkob checked
$scope.makeItCHecked = function(){
$scope.testIsChecked=true;
}
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app>
<div ng-controller="testCtrl">
<div><input type="checkbox" ng-model="testIsChecked">
$scope.testIsChecked value : {{testIsChecked}}</div>
<button ng-click="testIsChecked=true">Make it checked</button>
</div>
</div>
&#13;
答案 1 :(得分:-1)
有关说明,请参阅此link。 您可以将数组包含在以下对象中: 公共类objElement { string [] propertyName; } 然后绑定到您的复选框。