我想在 ng-class 中选择 form 元素,它在 ng-repeat 中,我需要 ng-class 中的 1:n 选择器。但是 {{}} + $index 在 ng-class 表达式中工作正常。扇区解析正确。但是 ng-class 无法处理它。当 {{}} + $index 在里面时,它没有检测到选择器。
代码:
<form name="vm.itemForm" ng-submit="vm.onSave()">
(...)
<tr ng-repeat="item in vm.item.sizes | orderBy:predicate:reverse">
(...)
<div class="dc-input-group">
<input class=""
ng-model="item.stock"
ng-class="{ 'testclass': vm.itemform.{{'stockInput'+$index}}.mySelector }"
name="{{'stockInput'+$index}}" />
</div>
HTML 输出:
<input class="form-validation dc-input dc-input--in-input-group dc-input--text-right ng-touched ng-not-empty ng-dirty ng-valid-number ng-valid ng-valid-required"
ng-model="item.stock"
ng-class="{ 'testclass': vm.form.stockInput1.$valid }"
required=""
name="stockInput1"
type="number">
最佳答案
ng-class
已经是一个表达式,因此您将 2 个表达式放在彼此中。您可以这样修复它:
<input class=""
ng-model="item.stock"
ng-class="{'testclass': vm.itemform['stockInput'+$index].mySelector}"
name="{{'stockInput'+$index}}" />
关于javascript - ng-repeat 中的 ng-class 带有 $index 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38201892/