【问题标题】:Angular Radio Buttons Form Validation角度单选按钮表单验证
【发布时间】:2018-07-13 21:01:17
【问题描述】:

I'm generating a group of radio buttons options from a JSON object which is requested when another radio button is selected.这按预期工作,但表单验证无法正常工作,因为只有第一次单击单选按钮组中的所有选项时,表单才会生效。

我对单选按钮的标记:

<div data-ng-repeat="option in options" class="radio">
     <label>
          <input type="radio" name="decline_type_id" ng-model="decline_type_id" value="{{option.id}}" ng-required="!decline_type_id" />
          <strong>{{option.name}}</strong>
     </label>
</div>

这是我的笨蛋:

https://plnkr.co/edit/B7KgUt4GMrnSATYIQuN5?p=preview

没有循环的相同标记按预期工作,所以我不明白在选择所有选项之前用于生成破坏表单验证的列表的循环是什么?

【问题讨论】:

    标签: angularjs json validation radio-button


    【解决方案1】:

    这是一个 Angular 范围问题。 ng-repeat 中的 ng-model 正在使用子范围。

    ng-model="decline_type_id" 对于循环的每次迭代都是唯一的。因此,每个独特的模型都需要进行 ng 检查。

    您可以使用 $parent 范围对共享变量进行 ng 所需的检查。

    &lt;input type="radio" ng-model="$parent.decline_type_id" value="{{option.id}}" ng-required="!$parent.decline_type_id" /&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-22
      • 2020-11-01
      • 2021-07-23
      • 2013-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多