簡體   English   中英

更改輸入復選框AngularJS的狀態

[英]Changing the state of the input checkbox AngularJS

如何根據參數的值更改checkbok狀態? 示例: JSFiddle

HTML:

<body  ng-app="myApp">
    <div ng-controller="rangeCtrl">
    Param:{{param}}
        <hr>
    <div>modelValue:{{modelValue}}</div>
      <input type="checkbox" style="width: 300px;"
             ng-change = "rangeChange()"
             ng-checked = "modelValue"
             ng-model = "modelValue">
    </div>
  </body>

JS:

var app = angular.module('myApp', []);
app.controller('rangeCtrl', function($scope, $interval, $timeout) {

(function update() {
    $timeout(update, 1000);
    $scope.param = Math.round((Math.random()));
  }());    
    $scope.$watch('param',
        function(newVal, oldVal) {
            if (newVal == oldVal) {
                $scope.modelValue = oldVal;
            }
        });

    $interval(function() {
        $scope.$watch('param',
            function(newVal, oldVal) {
                if (newVal !== oldVal) {
                    $scope.modelValue = newVal;
                }
            });
    }, 25);   
    $scope.rangeChange = function() {         
    }
});

我認為問題在於參數不是布爾值。

如果您使用,您的小提琴將起作用

ng-checked = modelValue === 1 

(假設您希望在值為1時對其進行檢查)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM