我有一个页面,我根据单选按钮选择显示文本框控件。当我从一个单选按钮切换到另一个单选按钮时,我能够显示文本框。在我的代码中,我有单选按钮"男性"默认选择,如何在页面初始加载时默认显示第一个输入控件。
HTML页面
<div class="radio">
<label>
<input type="radio" name="gender" value="Male" [formControl]="complexForm.controls['gender']" (click)="setradio('Male')" checked="checked">
Male
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="gender" value="Female" [formControl]="complexForm.controls['gender']" (click)="setradio('Female')">
Female
</label>
</div>
<!--<div *ngIf="edited">-->
<div *ngIf="isSelected('Male')" >
<input type="text"/>test
</div>
<div *ngIf="isSelected('Female')">
<input type="text"/> test2
</div>
组件类:
private selectedLink: string;
setradio(e: string): void {
this.selectedLink = e;
}
isSelected(name: string): boolean {
if (!this.selectedLink) {
return false;
}
return (this.selectedLink === name);
}
我已尝试将*ngIf="isSelected('Male')=='true'
的默认值设为true,但它无法正常工作。还有其他方法可以在页面加载时显示输入控件。
答案 0 :(得分:1)
private selectedLink: string = 'Male';
首次加载模板时,会检查第一个控件。如果您最初设置selectedLink='Male'
第一个输入,则会显示相同的内容。