首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在选择下拉角中显示默认选择

在选择下拉角中显示默认选择
EN

Stack Overflow用户
提问于 2018-11-11 10:18:16
回答 1查看 676关注 0票数 0

这是我的代码:

代码语言:javascript
运行
复制
<select label="people" id="ppl"  [(ngModel)]="Selectedppl" (ngModelChange)="onPplSelection($event.target.value)">
<option>select people</option>
<option *ngFor="let x of peopleList" [ngValue]="x">
    {{x.name}}
</option>

因为人员列表是一个具有名称、地址、联系人的对象。我想以params的形式向ngModelChange和ngValue发送对象。

但是,一旦我选择了一个特定的人并保存下来,我希望将下拉列表更改为选定的人的名字。基本上,我想显示默认的选择选项在下拉列表中,一旦保存。

我不使用Reactiveforms

EN

Stack Overflow用户

回答已采纳

发布于 2018-11-11 10:39:46

您可以拥有元素的引用并将其值传递给函数。

代码语言:javascript
运行
复制
<select label="people" id="ppl" #ppl="ngModel"  
   [(ngModel)]="Selectedppl" 
   [compareWith]="compareFn"
   (ngModelChange)="onPplSelection(ppl.value)">
     <option>select people</option>
     <option *ngFor="let x of peopleList" [ngValue]="x">
       {{x.name}}
     </option>
</select>

ts

如果您有复杂的对象,那么您必须使用ue compareFn,这有助于比较对象的角度来设置默认值。

代码语言:javascript
运行
复制
  compareFn(a, b) {
    if (!a || !b) {
      return false;
    } else {
      return a.name === b.name;
    }
  }

工作副本在这里- https://stackblitz.com/edit/hello-angular-6-2z9f3b

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53247745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档