2010-06-09 3 views
0

나는 날짜 이름 열에 datatable 있습니다. 이 열을 요일 이름별로 정렬하고 싶습니다. [금요일, 월요일, 일요일]로 정렬하면 [월요일, 금요일, 일요일] (오름차순)과 [일요일, 금요일, 월요일] (내림차순)을 반환해야합니다.날 이름으로 datatable 열 정렬

맞춤 정렬을 사용하려고했지만 맞춤 주문을 나타낼 수 없었습니다.

아이디어가 있으십니까?

감사합니다.

답변

1

문제점에 대한 해결책을 찾았습니다. 숫자 값으로 숨겨진 열을 만들었습니다. 정렬은이 열을 기반으로합니다.

var myColumnDefs = [ 
      { key: "A", sortable:true,hidden:true }, 
      { key: "columnToSort",label:"ABC", sortable:true, sortOptions: { sortFunction: mysortFunction } 
    { key: "myhiddenColumn", sortable:true, hidden:true } 
    } 

]; 

는 희망이

을하는 데 도움이 사용자 지정 정렬 기능

// Custom function to sort Column by another Column 
    var mysortFunction = function(a, b, desc) { 
      // Deal with empty values 
      if(!YAHOO.lang.isValue(a)) { 
       return (!YAHOO.lang.isValue(b)) ? 0 : 1; 
      } else if(!YAHOO.lang.isValue(b)) { 
       return -1; 
      } 

      // compare column values 
      var comp = YAHOO.util.Sort.compare; 
      var compState = comp(a.getData("myhiddenColumn"), b.getData("myhiddenColumn"), desc); 
      return compState; 
    }; 

그리고 열 인증 된 정의입니다