angularjs uigrid从下拉筛选器中删除初始空白选项

nszi6y05  于 2022-12-17  发布在  Angular
关注(0)|答案(2)|浏览(148)

这是我的用户界面网格的截图。

下面是创建该过滤器的代码。

{ field: 'channel_type', displayName: "Type", filter: {
                                        type: uiGridConstants.filter.SELECT,
                                        selectOptions: [
                                            { value: 'HD', label: 'HD' },
                                            { value: 'SD', label: 'SD' }
                                        ]
                                    }},
            { field: 'price', displayName: "Price", enableFiltering: false, enableSorting: false},

我的数据从rest API调用加载到uigrid中。
我真的想不出来是从哪里加的那个空选项,我也没有找到解决这个问题的方法,你们帮我解决一下吧。

yvfmudvl

yvfmudvl1#

这是已知问题,请参见ui-grid issues
解决方案(解决方法)是添加一些自定义样式:

#grid1 div div select option:first-child[value=""] {
   display: none;
}

Demo Plunker

n6lpvg4x

n6lpvg4x2#

你必须使用filterHeaderTemplate并在其中创建你的下拉列表。

field: 'yourField',
filterHeaderTemplate: '<div class="ui-grid-filter-container" ng-repeat="colFilter in col.filters"><select class="grid-filter-control" ng-model="colFilter.term" ng-options="option.value as option.label for option in colFilter.selectOptions"></select></div>',
filter: {
         disableCancelFilterButton: true,
         term: '',
         type: uiGridConstants.filter.SELECT,
         selectOptions: [{ value: '', label: 'All' },
                         { value: '1', label: 'Something' },
                         { value: '2', label: 'Something Else' }]
 }

定义术语将选择您的第一个选项,空的选项不会显示。

相关问题