我想在ng-repeat中验证一个带有多个无线电复选框的表单。
如何通过单选按钮输入验证所选选项:
ng-repeat之外的验证工作正常。例如。将$ index切换到customDish时。
问题是使用$ index在ng-repeat内进行验证。
必填字段应与ng-repeat循环内的所选单选按钮完全一致。
这是一个plunker
[http://plnkr.co/edit/j6bswtctD0ixaQmcDrp1?p=preview][1]
请帮助
提前致谢
[1]: http://plnkr.co/edit/j6bswtctD0ixaQmcDrp1?p=preview
答案 0 :(得分:1)
只需将此与您的ng-show进行比较:
ng-show="submitClicked && myOrderForm.dishQuantity.$error.required &&
($parent.checkboxSelection == $index)"
我添加了另外一个条件,确保该错误仅针对所选项目显示。
答案 1 :(得分:0)
另一种解决方案
<input ng-pattern="onlyNumbers" placeholder="quantity" ng-required="$parent.checkboxSelection === {{$index}}" name="dishQuantity{{$index}}" id="dishPrice" data-ng-model="dish.quantity" type="text" class="dish-quantity" id="dishQuantity" />
和span标记
<span class="custom-label-danger" ng-show="submitClicked && myOrderForm.dishQuantity{{$index}}.$error.required ">Field Required</span>
还在工作:)