Angular2 [已选择] Chrome问题

时间:2016-07-25 13:30:05

标签: google-chrome select angular html-select selected

myValues

{
    "level": [
        {
            "name": "Zero Level",
            "value": 0
        },
        {
            "name": "First Level",
            "value": 1
        }
    ]
}

选择框

<select [(ngModel)]="form.cache.level" name="level" required>
    <option
        *ngFor="let levelof myValues.level"
        [selected] ="level.value === 0"
        [value]="level.value">
        {{ level.name }}
    </option>
</select>

尽管事实上,level.value === 0为真,但它不会在Chrome中被选中。 (Firefox和IE工作)

作为解决方法,我初始化:

form.cache.level = 0  

但我想知道,为什么它不适用于Chrome? (这是playground用于进一步分析)

1 个答案:

答案 0 :(得分:0)

使用ngModel会覆盖selected属性的行为,因此如果您选择模型,则应始终设置绑定值,而不是尝试使用选项属性修改选择。

它可能在Firefox / IE中意外工作。