2017-05-31 90 views
1

我的问题是如何在Angular中选择多个值。方法我试过至今是:如何从角度选择多个值

模板:

<select multiple class="form-control" (click)="addDetails(t.value)" #t> 
        <option selected disabled>Select all applicable</option> 
        <option value="A">A</option> 
        <option value="C">C</option> 
        <option value="B">B</option> 
       </select> 

然后我拍打在我的课的所有值。然而这对我来说不是一个好方法。我想知道如何在这里利用Angular的数据映射。

组件:

addDetails(value){ 
    this.selectedValues = this.selectedValues.concat(','); 
    } 

PS:使用前,我删除最后一个逗号。此外,我不希望使用任何额外的插件,因为我没有奢侈到这里安装:(。

请帮助。

+0

只需使用[[(ngModel)]',angular会自动将'select multiple'映射到一个数组。 https://angular.io/docs/ts/latest/api/forms/index/SelectMultipleControlValueAccessor-directive.html – Claies

+0

它不起作用。我试过以下内容: Lovey

+0

没关系。我使用该值(plain,而不是ngValue)并且它正在工作。 – Lovey

回答

0

您可以使用md-select从角料2具有multiple性质,而且容易通过ngModel结合。Plunker demo

我也可以用你的代码和值与ngModel结合。在下面的demo,您可以选择A,B,C(按住Shift +点击可用的选项),看看他们都被添加到selectedValue