从API获取对象值列表,在对象内部有一个用于标识所选项目的属性 我能够绑定项目列表以查看
这里是json数据
这是我的代码:
<select class="form-control" name="Underwriter">
<option *ngFor="let underwriter of policyModel?.underwriterList" [ngValue]="underwriter.value" >{{underwriter.text}}</option>
</select>
以任何方式制作所选项目?
答案 0 :(得分:2)
您只需在选择中添加[selected]
,然后检查underwriter
哪个selected
属性为true
。
<select class="form-control" (change)="onChangeunderwriter($event)" name="Underwriter">
<option *ngFor="let underwriter of policyModel?.underwriterList" [ngValue]="underwriter.value" [selected]="underwriter.selected == true">{{underwriter.text}}</option>
</select>
所以只需添加:
[selected]="underwriter.selected == true"
简化plunker
答案 1 :(得分:0)
在你的问题中,你说你要“制作”所选的项目,我认为这意味着设置它。我就是这样做的,但可能还有其他更好的方法。
您需要在选项标记
中设置[attr.selected]
<select class="form-control" name="Underwriter">
<option *ngFor="let underwriter of policyModel?.underwriterList" [ngValue]="underwriter.value" [attr.selected]="underwriter.text === underwriterTextString ? true: null">{{underwriter.text}}</option>
</select>
然后,当WebService API返回结果时,您需要设置underwriterTextString
代码。
如果underwriter.text
不起作用,请尝试underwriter.value
但是,在下面的评论中,您现在说要“获取”所选项目。这可以通过使用select
标记
<select class="form-control" (change)="onChangeunderwriter($event)" name="Underwriter">
<option *ngFor="let underwriter of policyModel?.underwriterList" [ngValue]="underwriter.value" [attr.selected]="underwriter.text === underwriterTextString ? true: null">{{underwriter.text}}</option>
</select>
然后在你的代码中你需要这样的东西;
onChangeunderwriter(event) {
//the value will be set in event.target.value;
}