Angularjs - ng-invalid在ng-repeat表中的select元素上无法正常工作

时间:2018-06-01 08:45:55

标签: angularjs angularjs-ng-repeat selector ng-required

<td level="{{taskCtrl.level}}" check-permissions="noCommercial" ng-if="tEl.id_subtype==1 || tEl.id_subtype==2 || tEl.id_subtype==9 || tEl.id_subtype==10"> 
                    <select id="vpo_{{$index}}" name="vpo_{{$index}}" class="form-control np fs-small" 
                    ng-options="item.id as item.es for item in mainCtrl.vpo"
                    ng-model="tEl.vpo"
                    ng-required="true"
                    ng-change="taskCtrl.toggleVpo(tEl);">
                    <option value="">N.A.</option>
                    </select>
                </td>

上面的td的默认状态是ng-valid,尽管选择的选择器列表中没有选项。因此,ng-required不会禁用提交按钮。

但是,当您选择一个选项然后单击返回N.A.(占位符选项)时,该元素将变为.ng-invalid,并且根据需要禁用提交表单。它有效!

我知道这与ng-repeat有关,并且已经做了各种尝试来解决问题,方法是将表行包装在表格中,如各种帖子所示。

0 个答案:

没有答案