md-select不使用ng-value文本进行更新

时间:2015-08-21 10:37:34

标签: javascript angularjs angularjs-directive material-design angular-material

您好我有问题。

当我在ng-value中放入一个整数时,md-select会被更新:

<md-input-container>
      <md-select ng-model="test">
            <md-option ng-value="1">1</md-option>
            <md-option ng-value="2">2</md-option>
            <md-option ng-value="3">3</md-option>
            <md-option ng-value="4">4</md-option>
     </md-select>
</md-input-container>

但是当我使用字符串值执行此操作时,它无法正常工作,我该怎么办?

<md-input-container>
   <md-select ng-model="type">
        <md-option ng-value=''></md-option>
        <md-option ng-value='test' >test</md-option>
        <md-option ng-value='test02'>test02</md-option>
        <md-option ng-value='test03' >test03</md-option>
   </md-select>
 </md-input-container>

怎么了?

1 个答案:

答案 0 :(得分:7)

您可以使用value=""(期望字符串)

这是有效的:

<md-input-container>
  <md-select ng-model="type">
    <md-option value=''></md-option>
    <md-option value='test' >test</md-option>
    <md-option value='test02'>test02</md-option>
    <md-option value='test03' >test03</md-option>
  </md-select>
</md-input-container>

或者您可以使用ng-value=""(期待表达式)

<md-input-container>    
  <md-select ng-model="type">
    <md-option ng-value="''"></md-option>
    <md-option ng-value="'test'" >test</md-option>
    <md-option ng-value="'test02'">test02</md-option>
    <md-option ng-value="'test03'" >test03</md-option>
  </md-select>
</md-input-container>

您的第一个示例正在运行,因为整数值是正确的表达式。在第二个示例中,angular正在您的范围中查找名为test的属性。