Drop down menu 是否有使用“全选”选项的“角度材质md select”的版本

Drop down menu 是否有使用“全选”选项的“角度材质md select”的版本,drop-down-menu,angular-material,multipleselection,Drop Down Menu,Angular Material,Multipleselection,我一直在我的一个项目中使用角材料。突然,我意识到需要在md select上有一个全选选项。我想我会拉一个git请求 然而,目前我正在寻找一个类似的下拉结构,带有复选框(如md select multiple),但也有一个select all选项 我知道我可以将一个伪空条目推入md select选项数组,并对其选择进行反向操作。但这需要在我当前的结构中进行大量代码更改,而且也不是一件优雅的事情。 我试着在bootstrap和jQueryUI中查找它,但还没有找到。是否有任何人知道此类控制。任何重定

我一直在我的一个项目中使用角材料。突然,我意识到需要在md select上有一个全选选项。我想我会拉一个git请求

然而,目前我正在寻找一个类似的下拉结构,带有复选框(如md select multiple),但也有一个select all选项

我知道我可以将一个伪空条目推入md select选项数组,并对其选择进行反向操作。但这需要在我当前的结构中进行大量代码更改,而且也不是一件优雅的事情。


我试着在bootstrap和jQueryUI中查找它,但还没有找到。是否有任何人知道此类控制。任何重定向都会有帮助

您可以在HTML中轻松实现这一点。它只需要一行代码,或者两行代码,如果您还想要一个“selectnone”选项的话。比如说

<md-input-container>
  <label>Users</label>
    <md-select ng-model="selectedUser" multiple="" 
               ng-model-options="{trackBy: '$value.id'}">
      <md-optgroup label="Users">
      <md-option ng-repeat="user in users" 
                 ng-value="user">{{ user.name }}</md-option>
      </md-optgroup>
    </md-select>
</md-input-container>
<button ng-click="selectedUser=users">all</button>
<button ng-click="selectedUser=[]">none</button>

使用者
{{user.name}
全部的
没有一个

编辑:我更新了下面的Plunker,在“用户”选项组标题旁边的选择框中显示“全部”按钮。相关变化:

    <md-select ng-model="selectedUser" multiple="" ng-model-options="{trackBy: '$value.id'}">
      <button ng-click="doSelectedUser()" style="float:right">all</button>
      <md-optgroup label="Users">

全部的

我想您需要使用带有自动完成功能的md芯片。多重选择在材料设计上看起来不合适,而且可能在触摸屏上使用会很糟糕。@Velasquez:我怀疑你是否理解正确。我正在寻找的东西,可以选择从下拉列表中的所有值在一次点击或触摸。例如,在Gmail中,我们可以单击顶部的复选框,选择该页面上的所有邮件好的,我明白了。也许您可以在@C14L之前添加一个selectall:当然,这是可以做到的;但这不是我想要的..我想要的是你提供的按钮(或复选框)在下拉菜单中(可能除了你的用户标签)。有角度的材料在飞行中构建下拉列表,因此我无法实现it@SaurabhTiwari我更新了Plunker。您只需将按钮置于optgroup标题上方的
md select
中,然后将其置于
float:right
中即可。我对您的plunker进行了一些更改。希望您能够查看它们:
Users{{{user.name}
以及脚本中的此脚本
$scope.doSelectedUser=function(){if($scope.selectedUser.length>0)$scope.selectedUser=[];else$scope.selectedUser=$scope.Users;}
这使它更符合我最初的需求。感谢您提供了正确的方向。我希望只要稍加修改,就能达到目的。此外,如果您能用上述更改修改您的plunker,我将不胜感激,以防其他用户使用。