2017-02-10 7 views
0

角度uiグリッドを使用していますが、結論として、「男性」と「女性」を持つ「性別」の列があります。 「MALE」ドロップダウンをクリックすると、すべての男性と女性が表示されます(明らかに、m-a-l-eはf-e-m-a-l-eにあるためです)。どのようにして2つのフィルタを区別することができますか?角度uiグリッドフィルタのMALE/FEMALEに関する問題

 { 
     field: 'sex' 
     , displayName: 'SEX' 
     , width: '120' 
     , editableCellTemplate: '<div><form name="inputForm"><input type="INPUT_TYPE" ng-class="\'colt\' + col.uid" ui-grid-editor ng-model="MODEL_COL_FIELD" style="border-bottom-color: #74B3CE; border-bottom-width: 2px;"></form></div>' 
     , filter: { 
      type: uiGridConstants.filter.SELECT, 
      selectOptions: [ 
       { value: 'male', label: 'male' }, 
       { value: 'female', label: 'female' } 
      ] 
      } 
     }, 

答えて

1

フィルタリングのカスタム機能を提供できます。 column defを変更してカスタムフィルタ機能を使用するようにしてください。

{ 
    filter: { 
     type: uiGridConstants.filter.SELECT, 
     selectOptions: [ 
      { value: 'male', label: 'male' }, 
      { value: 'female', label: 'female' } 
     ], 
     condition: customFilterSelected 
     } 
    }, 

、次いで行ごとcustomFilterSelected

function customFilterSelected(function filterSelected(term, value, row, column) { 
    return term === value; 
} 

この機能が実行されるたびフィルタの変更を定義します。パラメータtermはフィルタの値で、valueは現在の行の値です。この関数がtrueを返した場合、行が表示されます。

関連する問題