0

我正在尝试从此链接使用Ui-grid

http://ui-grid.info/docs/#/tutorial/101_intro

我在 plunker 中做了一个 ui-grid 的简单示例。我需要在“性别”上添加选择框 作为过滤器。如果我选​​择“男性”,它只显示“m”的数据,或者如果我选择“女性”它显示过滤器数据只有“f”值这里是我的代码

Plunker https://plnkr.co/edit/DqBgHFnwLpYM5pvg0f56?p=preview 我尝试这样 但不起作用

type: uiGridConstants.filter.SELECT,
     selectOptions: [ 
         { value: 'm', label: 'male' },
         { value: 'F', label: 'female' }
     ];

我不需要性别输入字段。我需要选择框或性别列的下拉列表

4

1 回答 1

0

首先,您需要在控制器声明中添加 uiGridConstants 作为参数,以便您可以使用它。然后,您将能够做您想做的事。

angular.module('app',['ngTouch', 'ui.grid'])
    .controller('MainCtrl',function( $scope, uiGridConstants ){

    // ...

    $scope.gridOptions = {
         enableFiltering: true,
         columnDefs: [
             {
                 field: 'gender', 
                 displayName:'Gender',
                 filter: { 
                     type: uiGridConstants.filter.SELECT,
                     selectOptions: [ 
                         { value: 'm', label: 'male' },
                         { value: 'F', label: 'female' }
                     ];
                 }
             },
             {field: 'name', displayName:'First'},
             {field: 'lastname', displayName:'Second',enableSorting: false}
         ]
    };

    // ...
}

我会给你一个建议:要调试 Angular 代码或任何 javascript 代码,请使用 Firebug(用于 Mozilla Firefox)之类的工具。它将向您显示当您更改代码并尝试应用它时遇到的 javascript 错误。在这种情况下,您会看到:

Error: uiGridConstants is not defined
@https://run.plnkr.co/8CvvTtAR4QY8O2Ln/app.js:30:11
于 2016-01-05T08:23:05.400 回答