页面结构上面一个下拉框显示ID,下面一个input框显示名称,选择ID时名称自动回显。提交时,需要同时获取id和name
html代码:
<mat-form-field><mat-select placeholder="系统标识"(ngModelChange)="onChnage(item)" #item[(ngModel)]="data.dataForm.systemName" [disabled]="(data.title==='详情')"><mat-option *ngFor="let item of parameterSystem" [value]="item.systemName" >{{item.systemId}}</mat-option></mat-select></mat-form-field><mat-form-field><input matInput [(ngModel)]="data.dataForm.systemName" placeholder="系统名称" required disabled></mat-form-field>
后台ts:
方法一:event.selected.viewValue就是下拉框选中的ID
onChnage( event: any ) {
if( event.value ){
console.log(event.selected.viewValue);
} }
方法二:通过调用filter()方法 实际上也就是遍历,不推荐使用
onChnage( event: any ) {
if( event.value ){
this.selectedStatus = this.parameterSystem.filter( x => x.systemName === event.value );this.systemId = this.selectedStatus[0].systemId;onsole.log(this.systemId);}}
方法一二均可以拿到id ,推荐使用方法一。