如何在angular2中获取多选下拉选定值

Posted

技术标签:

【中文标题】如何在angular2中获取多选下拉选定值【英文标题】:How to get multi select dropdown selected value in angular2 【发布时间】:2020-10-07 09:03:42 【问题描述】:

您好,我使用过 Angular8 和 bootstrap 4。我使用过 bootstrap 多选下拉菜单,我需要获取选定的下拉菜单值。我怎样才能得到这些值。

DEMO

TS:

 setTimeout(() => 
      $('#multiselectFileName').multiselect(
        buttonWidth: '400px'
      );
      $('#multiselectUser').multiselect(
        buttonWidth: '400px'
      );
    ,100)

html

<div class="form-group">
          <label for="">Select User</label>
          <select name="user" id="multiselectUser" multiple="multiple" (change)="selecteduser($event)">
              <option *ngFor="let field of user" [value]="field.id" >
                  field.userName</option>
          </select>
      </div>

【问题讨论】:

【参考方案1】:

对我来说,这与question 类似,尝试使用 [(ngModel)] 在 select 标签中绑定组件(ts 文件)的变量以查看会发生什么,并使用 console.log()或调试模式查看绑定到 [(ngModel)] 的变量的值 例如:

<select [(ngModel)]="selectedUsers" name="user" id="multiselectUser" multiple="multiple" (change)="selecteduser($event)">
              <option *ngFor="let field of user" [value]="field.id" >
                  field.userName</option>
          </select>

【讨论】:

尝试在选择标签&lt;ng-container *ngFor="let field of user"&gt; &lt;option [value]="field.email"&gt;field.userName&lt;/option&gt; &lt;/ng-container&gt; 中为您的 *ngFor 使用 ng-container 我通过上面的代码成功完成了您的演示,您可以从Doc Official

以上是关于如何在angular2中获取多选下拉选定值的主要内容,如果未能解决你的问题,请参考以下文章

如何在多选选项中获取选定选项数据属性

如何使用jquery在标签中显示多选下拉列表的选定文本?

如何以编程方式在 select2 多选下拉列表中添加其他选择而不会丢失现有的选定项目

如何获取多选框的所有选定值?

如何在下拉angular2中获取标签字符串作为formControl值?

如何从多选下拉菜单中获取值并将它们与 POST 一起发送?