我在ng-repeat上使用了一个过滤器,当我导航到页面时它工作正常(一切都显示 - 没有任何过滤),当我过滤时,一切都很好。 当我将以我选择的方式“取消选择”过滤器时,我只会遇到问题。选项>< /选项>在选择输入中。没有显示任何内容而不是全部。 当我选择<时,有谁知道我能做什么?选项>< /选项>一切都像开头那样显示 - 当我导航到页面时?
somethingToIterate | filter: {institutionUserRole: {value: roleFilter}}
我的选择如下:
<select class="form-control roleSelect" ng-model="roleFilter" ng-options="role as role | translate for role in vm.roles">
<option></option>
</select>
答案 0 :(得分:0)
如果您在ng-model中使用对象,我认为您需要将默认选项添加到您在ng-repeat中循环的列表中。
像这样:
$scope.options = [
//add the default value in the options list.
{'value':'', 'label':''},
{'value':'1', 'label':'Option 1'},
{'value':'2', 'label':'Option 2'},
{'value':'3', 'label':'Option 3'},
{'value':'4', 'label':'Option 4'},
{'value':'5', 'label':'Option 5'},
{'value':'6', 'label':'Option 6'}
];
<div class="jumbotron">
<select ng-model="option" ng-options="item as item.label for item in options track by item.value">
</select>
<ul>
<li ng-repeat="item in data | filter: {name: option.value}">{{item.name}}
</li>
</ul>
</div>
或者你可以这样试试,
<select ng-model="selected.option">
<option value='' >select</option>
<option ng-repeat="option in options" value="option.value">{{option.label}}
</option>
</select>
这是一个工作示例。 http://codepen.io/mkl/full/qZjwJG/