加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 将ngTrueValue和ngFalseValue设置为数字

发布时间:2020-12-17 08:27:35 所属栏目:安全 来源:网络整理
导读:我已经绑定了一个值的复选框: input type="checkbox" ng-model="checkbox" ng-true-value="1" ng-false-value="0" / 在控制器中复选框的值设置为1: function Controller($scope) { $scope.checkbox = 1} 但是,最初该复选框未出现选中状态。如果我将$ scop
我已经绑定了一个值的复选框:
<input type="checkbox" ng-model="checkbox" ng-true-value="1" ng-false-value="0" />

在控制器中复选框的值设置为1:

function Controller($scope) {
    $scope.checkbox = 1
}

但是,最初该复选框未出现选中状态。如果我将$ scope.checkbox的初始值更改为“1”,它会。 (jsfiddle demo)

我试过各种各样的变化:

ng-true-value="{{1}}"
ng-true-value="{{Number(1)}}"
ng-true-value="{{parseInt('1')}}"

他们没有工作。我如何使角度处理参数作为一个数字?

你可以使用 ngChecked,如果表达式是真实的,那么将在元素上设置特殊属性“checked”
<input type="checkbox" 
    ng-model="checkbox" 
    ng-true-value="1" 
    ng-false-value="0" 
    ng-checked="checkbox == 1" />

你可以使用$ scope。$ watch将它转换为数字

$scope.$watch(function(){
    return $scope.checkbox;
},function(){
    $scope.checkbox = Number($scope.checkbox);
    console.log($scope.checkbox,typeof $scope.checkbox);
},true);

DEMO

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读