如何通过单选按钮捕获事件?

时间:2015-03-30 14:03:30

标签: angularjs

现在我有HTML元素:

<input type="radio" ng-change="saveSubscriber(1)" name="type" value="1">
<input type="radio" ng-change="saveSubscriber(2)" name="type" value="2">

控制器中的Angular JS事件:

$scope.saveSubscriber = function (type) {
   // Do Ajax here
}

此示例对我不起作用,可能会替换ng-click()? 我的例子,这也不起作用:

<input type="radio" ng-model="type" ng-click="saveSubscriber();" name="type" value="2">

$scope.saveSubscriber = function () {
   console.log($scope.type);
}

2 个答案:

答案 0 :(得分:2)

指定一些ng-model来点火ng-change事件,两个单选按钮的ng-model应该与我使用的test相同,这将更改ng-model值点击它&amp;将触发ng-change事件

<强>标记

<input type="radio" ng-change="saveSubscriber(test)" name="type" 
ng-value="1" ng-model="test"/>
<input type="radio" ng-change="saveSubscriber(test)" name="type" 
ng-value="2" ng-model="test"/>

<强>代码

$scope.saveSubscriber = function(type) {
  console.log(type);
};

Working Plunkr这里

答案 1 :(得分:0)

您可以使用此代码观看收音机按钮。

&#13;
&#13;
    
    $scope.$watch('value', function(value) {
           console.log(value);
//Do your things!
     });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.10/angular.min.js"></script>
<input type="radio" ng-model="value" value="value" ng-value="1">
<input type="radio" ng-model="value" value="value" ng-value="2">
&#13;
&#13;
&#13;