zoukankan      html  css  js  c++  java
  • jquery实现table按时间排序

    $(document).ready(function(){
      sortTable();
    });

    var sortTable = function(){
        $("#tableList").find("#cell_startDate").bind("click",function(){
            var sortType = changSign("#tableList","#cell_startDate");
            var sortByStartDateFun = sortByType(sort,".list_startDate label");
            $("#tableList tbody").html($("#tableList tbody tr").sort(sortByStartDateFun));
        });
    }

    var changSign = function(tableSign,rowSign)
    {
        var idtext = $(tableSign).find(rowSign).text();
        var sortType = "asc";
        if(idtext.indexOf("↑") > 0)
        {
            $(tableSign).find(rowSign).text(function(i,origText){
                return origText.substring(0,4) + "↓";
            });
            sortType = "asc";
        }else{
            $(tableSign).find(rowSign).text(function(i,origText){
                return origText.substring(0,4) + "↑";
            });
            sortType = "desc";
        }
        return sortType;
    }

    var sortType = function(sortType,list_sort){
        return function sortByDate(a,b){
            var aVal = $(a).find(list_sort).text();
            var bVal = $(b).find(list_sort).text();
            if("" == aVal)
            {
                return -1;
            }
            if("" == bVal)
            {
                return 1;
            }
            var aDateTemp = aVal.split(" ");
            var bDateTemp = bVal.split(" ");
            
            var arrStartDate = aDateTemp[0].split("-");
            var arrEndDate = bDateTemp[0].split("-");
            
            var arrStartTime = aDateTemp[1].split(":");
            var arrEndTime = bDateTemp[1].split(":");
            
            var allStartDate = new Date(arrStartDate[0],arrStartDate[1],arrStartTime[0],arrStartTime[1],arrStartTime[2]);
            var allEndDate = new Date(arrEndDate[0],arrEndDate[1],arrEndTime[0],arrEndTime[1],arrEndTime[2]);
            
            if(sortType == "asc")
            {
                if(allStartDate >= allEndDate)
                {
                    return 1;
                }else{
                    return -1;
                }
            }else{
                if(allStartDate > allEndDate)
                {
                    return -1;
                }else{
                    return 1;
                }
            }
        }
    }

  • 相关阅读:
    17款最佳的代码审查工具
    最全的开发人员在线速查手册
    Expression Blend 4 激活码
    TimeSpan XML序列化
    如何使用策略模式
    .Net 笔记(二) 泛型和集合
    VS2010 旗舰版序列号
    WPF ArrangeOverride与MeasureOverride
    实现zbar扫描二维码的时候就把照片存储出来的办法
    用Jpush极光推送实现抓取特定某个用户Log到七牛云服务器
  • 原文地址:https://www.cnblogs.com/happyrocky/p/web_jspsort.html
Copyright © 2011-2022 走看看