如何从多重选择中获取整个(选定)对象-Angular

时间:2019-02-04 11:26:57

标签: angular typescript angular7 angular-ngmodel ngfor

我正在尝试从multiselect dropdown中删除整个对象,并将其添加到我的角度模板中。

但是我不知道该怎么做,我得到的id没有问题,但是当我尝试使用整个对象时,却无法获得它,它显示在控制台[object Object]中。

<!-- Select All option -->
<div class="form-group row">
<label class="col-form-label col-lg-3">Roles:</label>
<div class="col-lg-9">
  <select id="applicationModuleFormSelect" name="applicationModuleFormSelect"  [(ngModel)]="amf" class="form-control multiselect-select-all" multiple="multiple" data-fouc>
    <option *ngFor="let amf of appModuleForms;" [value]="amf">{{amf.title}}</option>
  </select>
</div>
</div>
<!-- /select All option -->

 onSubmit() {
    var selectedAppForms = $('#applicationModuleFormSelect').val();
    console.log((selectedAppForms));
}

如您所见,我写了[value]="amf",在控制台中我得到了:

[![在此处输入图片描述] [1]] [1]

如果我申请JSON.stringify,也会得到类似的结果:

["1: Object","3: Object"]

谢谢大家 干杯

1 个答案:

答案 0 :(得分:1)

使用[(ngModel)]="selectedData"

Stackblitz Demo

<div class="form-group row">
<label class="col-form-label col-lg-3">Roles:</label>
<div class="col-lg-9">
  <select id="applicationModuleFormSelect" name="applicationModuleFormSelect"  [(ngModel)]="selectedData" class="form-control multiselect-select-all" multiple="multiple" data-fouc>
    <option *ngFor="let amf of appModuleForms;" [value]="amf">{{amf.title}}</option>
  </select>
</div>
</div>