如何在角度js材料md-select中获取显示文本和值



如何获取角度材料md-select中的显示文本和值。我只能获得模型值(selected_value)

<md-input-container class="md-block">
  <label>Some Label</label>
  <md-select 
             ng-model="selected_value">
    <md-option ng-value="item" ng-repeat="item in ctrl.items" >
  </md-select>
</md-input-container>

我的列表

[ID: name1, Name:value1]
[ID: name2, Name:value2]
[ID: name3, Name:value3]
[ID: name4, Name:value4]

如果选择了名称 1,我需要获取值 1。

像选择字段中的所有选项一样,您可以在此处绑定显示值item.Name,并链接到另一个值,此处item.ID。所以你可以像这样编写代码:

<md-input-container class="md-block">
   <label>Some Label</label>
   <md-select ng-model="selected_value">
      <md-option ng-value="item" ng-repeat="item in ctrl.items">{{ item.Name }}</md-option>
   </md-select>
</md-input-container>

选择选项时,模型(此处为 selected_value )等于 ng-value 中的值。

在上面,选择字段显示每个项目的所有名称,当用户选择一个选项时,您可以通过变量 selected_value 获取完整的项目(ID 和名称)。

有关更多信息,您可以阅读官方文档:https://material.angularjs.org/latest/api/directive/mdSelect

您可以使用

ng-model-options="{trackBy: '$value.ID'}"来选择{ID: name1, Name:value1}

<md-select name="serviceType"
           id="serviceType"
           ng-model="ctrl.selected_value"
           ng-model-options="{trackBy: '$value.ID'}">
  <md-option ng-value="t" ng-repeat="t in ctrl.items">{{ t.Name }}</md-option>
</md-select>

最新更新