2013-12-20 93 views
0

我正在使用angularjs创建两组下拉菜单。第一个下拉列表包含体育列表,第二个下拉列表包含所选运动可以播放的法院列表。所以当用户选择例如。在第一个下拉菜单中显示网球,然后显示他/她可以打网球的球场。它看起来像这样:http://screencast.com/t/JFZ973IAILo7。请注意,选择“Court 1”是因为这是下拉菜单中的第一项。选择框不显示在angularjs中过滤的选定项目

但是,当我过滤包含法院的下拉列表,并且第一个法院不在列表中时,没有项目被设置为选定。需要注意的是由于选择了 “法院2” 未设置: http://screencast.com/t/Fh1LvEgO

我的代码如下: 下拉与体育:

<select ng-model="selected.sport" ng-options="sport.name for sport in sports" > 
</select> 

筛选下拉与法院:

<select ng-model="selected.court" ng-options="court.name for court in courts | filter:filterBySports" > 
</select> 

和我过滤器(使用下划线):

$scope.filterBySports=function(row) { 
    if($scope.selected.sport!=undefined) 
     return !!_.where(row.sports, {name:$scope.selected.sport.name}).length; 
    else 
     return true; 
    }; 

所以我的问题是,如何在过滤时将第一项设置为选中状态?

+0

请,后'sports'模型。 –

+0

要在'