angular js 多个 select 到单个下拉转换
angular js multiple select to single drop down conversion
我有一个 multiselect 下拉菜单,但我只想 select 其中一个选项,然后当该模式打开时,该下拉菜单 selection 已保存。
现在下拉菜单是多的,当我关闭模式时,值仍然是 selected。我想要相同的功能,但在单个 select 下拉列表中。不确定我错过了什么。
<md-select ng-model="itemSet.filters["names"].values" multiple aria-label="{{itemSet.filters["names"].label}}">
<md-option ng-value="item" ng-repeat="item in itemSet.filters["names"].options">{{item.label}}</md-option>
</md-select>
当我删除 md-select 中的多个选项时,我在控制台中收到错误消息:this.values.forEach 不是函数
这是我的 itemSet 名称对象。
'names': {
class: 'Filter',
name: 'names',
label: 'names',
labelField: 'label',
options: [
{
label: 'filled',
api: 'table',
key: '!VACANT'
},
{
label: 'vacant',
api: 'table',
key: 'VACANT'
}
]
在这一点上几乎停滞不前,任何指导都会非常酷。我只想能够 select 从下拉列表中选择一个,然后在打开具有此功能的模态时将其保留在那里。
在多模式下,ng-model
是一个值数组。但是由于您摆脱了 multiple
属性,它只包含单个选定值,当然没有 forEach
方法。您没有在迭代 this.values
的地方包含控制器代码,但这是您需要更改内容的地方,以及将下拉列表更改为:
<md-select ng-model="itemSet.filters["names"].value" aria-label="{{itemSet.filters["names"].label}}">
<md-option ng-value="item" ng-repeat="item in itemSet.filters["names"].options">{{item.label}}</md-option>
</md-select>
在您的控制器中,直接使用 this.value
(假设 this
=== itemSet.filters["names"]
)。
我有一个 multiselect 下拉菜单,但我只想 select 其中一个选项,然后当该模式打开时,该下拉菜单 selection 已保存。
现在下拉菜单是多的,当我关闭模式时,值仍然是 selected。我想要相同的功能,但在单个 select 下拉列表中。不确定我错过了什么。
<md-select ng-model="itemSet.filters["names"].values" multiple aria-label="{{itemSet.filters["names"].label}}">
<md-option ng-value="item" ng-repeat="item in itemSet.filters["names"].options">{{item.label}}</md-option>
</md-select>
当我删除 md-select 中的多个选项时,我在控制台中收到错误消息:this.values.forEach 不是函数
这是我的 itemSet 名称对象。
'names': {
class: 'Filter',
name: 'names',
label: 'names',
labelField: 'label',
options: [
{
label: 'filled',
api: 'table',
key: '!VACANT'
},
{
label: 'vacant',
api: 'table',
key: 'VACANT'
}
]
在这一点上几乎停滞不前,任何指导都会非常酷。我只想能够 select 从下拉列表中选择一个,然后在打开具有此功能的模态时将其保留在那里。
在多模式下,ng-model
是一个值数组。但是由于您摆脱了 multiple
属性,它只包含单个选定值,当然没有 forEach
方法。您没有在迭代 this.values
的地方包含控制器代码,但这是您需要更改内容的地方,以及将下拉列表更改为:
<md-select ng-model="itemSet.filters["names"].value" aria-label="{{itemSet.filters["names"].label}}">
<md-option ng-value="item" ng-repeat="item in itemSet.filters["names"].options">{{item.label}}</md-option>
</md-select>
在您的控制器中,直接使用 this.value
(假设 this
=== itemSet.filters["names"]
)。