如何知道angularjs中的控制器中是否检查了单选按钮

how to know if a radio button is checked or not in controller in angularjs

本文关键字:检查 单选按钮 是否 何知道 angularjs 控制器      更新时间:2023-09-26

我正在使用单选按钮,我想知道它们是否在控制器中被选中。除了(document.getElementById("radio_button").checked)之外,还有其他方法可以在angular中找到它吗?

您可以在点击时触发函数,如下所示:

在HTML:中

  <div  ng-click='newValue(value)'>
                <input type="radio" ng-model="value" value="firstValue">
                <input type="radio" ng-model="value" value="secondValue" > </div>

您也可以使用ng变化来观察模型变化,如下所示:

在Javascript中:

        $scope.newValue = function (value) {
                    alert(value);
                }

你甚至可以使用$watch来查看价值,如下所示:

            $scope.$watch('value', function(value) {
                   alert(value);
             });

然而,使用ng-change比$watch更好、更高效,而且更容易测试。

不需要$watch

你可以用更简单的方法来做。

<body ng-controller="testCtrl">
   <label>Check me to check both: 
   <input type="checkbox" ng-model="master" ng-checked="checkTest(master)"></label><br/>
  </body>

JS:

 $scope.checkTest = function(boolChecked){
      console.log(boolChecked)
    }

这是Plunker

您可以用几种不同的方法来实现这一点:

带单选按钮

在您的HTML 中

<input type="radio" ng-value="isButtonChecked">

在您的控制器中

$scope.isButtonChecked = true;

带有另一个元素标签

在您的HTML 中

<div ng-click="isButtonChecked = !isButtonChecked"></div>

在您的控制器中

$scope.isButtonChecked = true;