首先选择未被隐藏的ng

时间:2016-06-24 11:32:11

标签: javascript jquery angularjs

我有一个选择列表:

<option ng-repeat="hour in Hours" 
             value="{{hour.Value}}"
             ng-show="filterEvent($index)"
             ng-selected="hour.Value == EventDate || $first">
      {{hour.Text}}
</option>

我想要自动选择未隐藏的第一个元素。现在如果我隐藏第一个元素,它就不会改变所选的索引。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

隐藏第一个选项

<select ng-model="hour" required="required"
  ng-options="hour.value as hour for hour in hours" >
    <option style="display:none" value="">select a type</option>
</select>

答案 1 :(得分:1)

Angular往往会忽略所选的属性,如果您想要选择一个元素,只需选择一个ng-model并将您想要选择的值设置为模型变量。

<select ng-model="selectValue" name="mySelect">
    <option ng-repeat="hour in Hours" 
         value="{{hour.Value}}"
         ng-show="filterEvent($index)"
         >
  {{hour.Text}}
   </option>
</select>

并且,在您的控制器中使用forEach来查找数组的第一个可见值,并将其值设置为模型变量。