我有一个数组possibleAnswers[]
,其中包含select的可能选项,一个数组chosenFields[]
的一个元素,包含我需要显示为选定状态的一个选项。
可能的答案和选择的答案都来自不同的观点。如何实现数据绑定?
我尝试同时使用[comparedWith]
,[selected]
,[ngValue]
和[value]
标记,但无法使用。
<select class="form-control" id="possibleAnswersOfField{{j}}" name="selectForQuestion{{i}}" [(ngModel)]="answers[i].chosenFields[j]">
<option *ngFor="let answer of question.possibleAnswers" [selected]="answer == answers[i].chosenFields[j]">{{answer}}</option>
</select>
Angular始终选择possibleAnswers
的最后一个元素作为所选选项,这很奇怪,因为如您在屏幕快照中所见,最后一个元素“ blau”没有选择标签。
这是表格:
答案 0 :(得分:0)
[selected]是实现此目的的正确方法,如果该值是您要选择的值,则需要传递true。
或者,如果您需要查看该值是否与selectedFields值匹配,它将看起来像这样。
<option *ngFor="let answer of question.possibleAnswers" [selected]="answer == chosenFields[0]">
{{answer}}
</option>
这种方式[selected]将两个值匹配为真。