如何使用ngfor循环索引值预先选择[checked]第一个单选按钮

时间:2018-05-19 12:15:51

标签: javascript angular

我必须预先选择组中的初始单选按钮

在下面的ng-for循环方法中,在输入

上使用基于索引的条件
<div class="left-menu" *ngFor="let position of allStyles">
        <h4>{{position.position_name}}</h4>
        <div class="checkbox" *ngFor="let subpostion of position.sub_position.items; index as i" >
            <label>
               <input type="radio" [id]="position.position_name+i" [name]="'group'+position.position_name" [value]="subpostion.id" [(ngModel)]="custom[position.position_name]"  [checked]="i === 0" >
                      {{subpostion.subposition_name}}
            </label>
         </div>
</div>

问题:

组中的第一个单选按钮未根据条件选择[已检查] =&#34; i === 0&#34;

注意:

1.想要控制预览从视图部分本身不要在component.ts中设置任何默认值

2.请不要将其标记为副本我将所有链接都称为与之无关的解决方案

2 个答案:

答案 0 :(得分:0)

如果您正在使用value[(ngModel)],那么您必须首先初始化要选择的单选按钮的值,以保持其值,而无需设置checked属性在html模板中。

示例:value and ngModel

答案 1 :(得分:0)

这里是一个例子:

<tr *ngFor="let entry of entries; let idx = index">
        <td>{{ entry.description }}</td>
        <td><input type="radio" name="radiogroup" (change)="onSelectionChange(entry)" [checked]="(idx === 0)" [value]="entry.id"></td>
</tr>