改变一个选择,其他选择是改变

问题描述 投票:0回答:2

我的申请有问题。我必须使用ngValue ngModel编写几个选择。问题是,当一个人改变时,其他人选择改变相同的值 - 为什么?

HTML:

<select placeholder="Contrat" name="contrat"  [(ngModel)]="contrat" class="form-control">

      <option [ngValue]="contrat" *ngFor="let contrat of contrats"> {{contrat.id}}</option>
    </select>

    <select placeholder="Contrat" name="contrat"  [(ngModel)]="contrat" class="form-control">

      <option [ngValue]="contrat" *ngFor="let contrat of contrats"> {{contrat.id}}</option>
    </select>

    <select placeholder="Contrat" name="contrat"  [(ngModel)]="contrat" class="form-control">

      <option [ngValue]="contrat" *ngFor="let contrat of contrats"> {{contrat.id}}</option>
    </select>

解决方案是什么?

非常感谢。

angular angular-ngmodel
2个回答
2
投票

发生这种情况是因为您将相同的变量绑定到[(ngModel)]中的每个选择

您正在使用双向绑定,因此一个选择中的任何更改都将更改该变量。 Angular会检测到这一点并更新其他绑定。


0
投票

在您的情况下,您对所有三个选择框都具有相同的[(ngModel)],因此当您从选择框中选择一个值时,它会反映另一个值。

所以你必须使用不同的ngModel作为三个选择标签

© www.soinside.com 2019 - 2024. All rights reserved.