2017-02-10 6 views
0

각도 앵글 그리드를 사용하는 경우, 결론은 "남성"및 "여성"이있는 '성별'열이 있다는 것입니다. "MALE"드롭 다운을 클릭하면 모든 남성과 여성이 표시됩니다 (분명히 m-a-l-e는 f-e-m-a-l-e에 있기 때문에 분명합니다). 필터를 구별 할 수있는 방법은 무엇입니까?앵글 그리드 필터 문제가 남성/여성

 { 
     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을 반환하면 행이 표시됩니다.