我正在尝试在按钮单击事件上禁用一组无线电,这些事件是使用ng-repeat动态生成的,但是我只需要禁用未检查的无线电按钮。
<label class="radio" ng-repeat="questionValue in question.values">
<input type="radio" name="{{question.name}}"
ng-model="attrs[question.name]" value="{{questionValue[1]}}" >
<i></i>
{{questionValue[0]}}
</label>
答案 0 :(得分:0)
您可以做的是:
<label class="radio" ng-repeat="questionValue in question.values">
<input type="radio" name="{{question.name}}"
ng-model="attrs[question.name]" value="{{questionValue[1]}}"
ng-disabled="disabler[$index]">
<i></i>
{{questionValue[0]}}
</label>
然后在控制器内部,你可以创建一个布尔数组:
$scope.disabler = [];
for (var i = 0; i < $scope.question.values.length; i++){
$scope.disabler.push(false);
}
然后在您的点击处理程序中添加您的逻辑:
for (var i=0; i < $scope.disabler.length; i++){
if (yourLogic)
$scope.disabler[i] = true;
}
答案 1 :(得分:0)
您可以使用ng-disabled属性。然后在单击按钮时在控制器上设置一个值,然后执行以下操作:
<input type="radio" name="{{question.name}}"
ng-model="attrs[question.name]" value="{{questionValue[1]}}"
ng-disabled="[yourButtonValue] && [radioButton.disabled] == false" >