首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在angular-material中实现多选选项?

如何在angular-material中实现多选选项?
EN

Stack Overflow用户
提问于 2015-02-22 16:28:33
回答 3查看 30.1K关注 0票数 22

我已经检查了文档和演示,但是天哪!我还没有找到任何实现多选选项的参考,比如使用angular-material的select 2。有没有人能告诉我怎么做?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-09-08 13:35:07

Splaktar的答案是正确的:只需在md-select中添加多个即可。

工作解决方案的代码:http://codepen.io/ansgar-john/pen/RWPVEO?editors=101

HTML

代码语言:javascript
复制
<div>
  <md-input-container>
    <md-select multiple ng-model="ctrl.likedAnimals" placeholder="please select">
      <md-option ng-repeat="a in ctrl.animals" value="{{a}}">{{a}}</md-option>
    </md-select>
  </md-input-container>
</div>

JS

代码语言:javascript
复制
(function () {
  'use strict';
  angular
      .module('MyApp')
      .controller('AppCtrl', function($scope) {
        this.likedAnimals = ["mouse", "dog"];
        this.animals = ["mouse", "dog", "cat", "bird"];
  });
})();

基于堆栈溢出的代码答案:How am I supposed to implement multiple select option in angular-material?

票数 26
EN

Stack Overflow用户

发布于 2015-08-13 18:16:06

查看chips

您也可以应用您自己的自定义模板。

票数 5
EN

Stack Overflow用户

发布于 2015-10-01 22:49:39

我使用下面的代码来允许我使用ng-repeat和一些md-select,它们是多个的,有些不是(从Angular 1.4.7开始):

index.html

代码语言:javascript
复制
<md-input-container ng-repeat="item in items track by $index">
        <label>{{item.title}}</label>
            <div ng-include="item.multiselect == 'true' ? 'm_selectfragment.html' : 's_selectfragment.html'"></div>
   </md-input-container>

Javascript

代码语言:javascript
复制
$scope.items = 
        [{title: 'funny',
        selected: '', 
        names: [
            {name: 'some name'}, 
            {name: 'other name'},
            {name: 'more?'}, 
            {name: 'say wha???'}             
            ],
         multiselect: "false"   
        }, 
        {title: 'serious', 
        selected: '', 
        names: [
           {name: 'Obama'},
        {name: 'Trump'},
        {name: 'Hillary'},
        {name: 'Putin'}               
            ],
         multiselect: "true"   
        }];

m_selectfragment.html

代码语言:javascript
复制
<md-select name="item.title" ng-model="item.selected" multiple="true">
<md-option ng-repeat="name in item.names" value="{{name.name}}">{{name.name}}
</md-option>

s_selectfragment.html

代码语言:javascript
复制
<md-select name="item.title" ng-model="item.selected">
<md-option ng-repeat="name in item.names" value="{{name.name}}">{{name.name}}
</md-option>

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

https://stackoverflow.com/questions/28655946

复制
相关文章

相似问题

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