【问题标题】:Sorting datatable column by day name按日期名称对数据表列进行排序
【发布时间】:2010-06-09 08:59:00
【问题描述】:

我有一个包含日期名称列的数据表。我想按日期名称对这一列进行排序,例如如果我有 [Friday, Monday,Sunday] 排序应该返回 [Monday ,Friday,Sunday](升序)和 [Sunday,Friday,Monday](降序)。

我尝试使用自定义排序,但无法表示我的自定义顺序。

你有什么想法吗?

谢谢

【问题讨论】:

    标签: sorting yui-datatable


    【解决方案1】:

    我找到了解决问题的方法。我创建了一个带有数值的隐藏列。排序将基于此列。这是自定义排序功能

     // 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;
       };
    

    还有列定义:

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

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-18
      • 2017-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-06
      • 2021-10-31
      相关资源
      最近更新 更多