我有一个使用来自WebService的ng-repeat显示的vochers列表,每个vocher都有一个关联的复选框,当我检查一个特定的复选框时,vocher的价格是扣除总价格,这个问题有问题是:"一旦总价格为0,我必须禁用未选中的复选框"目前我可以禁用它们,但我想保持选中的复选框启用,以便我可以再次取消选中它们。
HTML:
<div class="item" ng-class="{active:!$index}" ng-repeat="slide in MesAvoirs | limitTo: slideLength track by $index">
<div class="mes_avoires" ng-repeat="a in MesAvoirs | startFrom: ($index*5) | limitTo: 5">
<input class="mes_avoires_checkbox" type="checkbox" ng-model="check" ng-change="avoirPrixCal($index,check,a)" id="chBx-{{$index}}" ng-disabled="uncheckVar" />
<div class="left_av">
<em>{{"MonProfilMesAvoirs.Num_Avoir" | translate}} {{a.NumeroAvoir}}</em>
<strong>{{a.Montant}} {{"Globale.Devise" | translate}}</strong>
</div>
<div class="right_av">
<em translate="MonProfilMesAvoirs.Valide_till"></em>
<strong>{{a.DateValiditeJ }} {{a.DateValiditeM}} {{a.DateValiditeY}}</strong>
</div>
</div>
</div>
答案 0 :(得分:1)
如果我理解你的问题,你想在总价格等于0时禁用未选中的复选框。
为什么你没有使用模型来获取复选框的状态(选中或取消选中)并测试类似的内容:
<input type="checkbox" ng-model="yourCtrl.checked[your_checkbox_number]" ng-disable="(yourCtrl.totalPrice <= 0 && !yourCtrl.checked[your_checkbox_number])/>