我有一个包含输入的for循环,每个循环由五个无线电值组成,其名称和模型是动态的。
我想将值1设置为默认值,我可以使用通常的html“checked”或“checked = checked”但它只能在没有ngModel的情况下工作,如果我使用的是ngModel,我必须在组件类中初始化它但是,因为它是动态的,我无法首先初始化它。
有没有其他选择或者我错过了什么?
<div class="scorecard-attribute" *ngFor="let attribute of opportunity.scorecard.scorecard_attributes">
<input type="radio" name="{{attribute.name}}" [value]=1 [(ngModel)]="newRating[attribute.id]" checked>
<input type="radio" name="{{attribute.name}}" [value]=2 [(ngModel)]="newRating[attribute.id]">
<input type="radio" name="{{attribute.name}}" [value]=3 [(ngModel)]="newRating[attribute.id]">
<input type="radio" name="{{attribute.name}}" [value]=4 [(ngModel)]="newRating[attribute.id]">
<input type="radio" name="{{attribute.name}}" [value]=5 [(ngModel)]="newRating[attribute.id]">
答案 0 :(得分:0)
您可以在HTML文件中尝试此代码,
<div class="scorecard-attribute" *ngFor="let attribute of opportunity.scorecard.scorecard_attributes">
<input type="radio" [value]="attribute" [(ngModel)]="newRating" (click)="click(attribute)">{{attribute.name}}
</div>
在组件文件
中添加此代码newRating:any=opportunity.scorecard.scorecard_attributes[0];
click(obj){
console.log(obj);
}
谢谢,