2012-04-02 125 views
0

我有一个表,我正在用它排序数据。现在我正在从最新到最旧排序,反之亦然。现在,我想对它进行排序,以获取前一周或前一个月或上一年的所有数据。以下是我现在有一些基本排序:使用jQuery或JavaScript对一周,一个月和一年进行排序日期

rowsOne.sort(function(a, b) { 

    var A = $(a).children("td").eq(1).text().toUpperCase(); 
    var B = $(b).children("td").eq(1).text().toUpperCase(); 

      var unixA = new Date(A); 
      var unixB = new Date(B); 

    if(unixA < unixB) { 
     return -1; 
    } 

    if(unixA > unixB) { 
     return 1; 
    } 

    return 0;   
}); 

我怎样才能改变这种允许通过周,月或年排序?

编辑 对不起,我粘贴了一段错误的代码。这是更新的JavaScript。 不,我不能告诉你表格本身 - 它包含我无法提供的信息。

编辑2 我需要澄清。我不需要在表格被分类后过滤。基于过去的一周,一个月或一年选择数据的选项可以与从最新到最旧(或从最旧到最新)的数据一起排序。我需要能够从“上周”,“上个月”和“去年”获取独立于实际排序的数据。

编辑3 任何人有什么想法?

+1

你使用Unix时间戳吗? SQL时间戳?格式化的字符串? – hohner 2012-04-02 18:09:51

+1

我们可以看到表格的样本吗? – Fresheyeball 2012-04-02 18:10:08

+0

@Jamie我只是javascript日期对象。我更新了代码。 – mdance 2012-04-02 18:13:35

回答

0

你在谈论2件不同的事情。你的排序功能是正确的,但现在你需要一个过滤器功能。

http://api.jquery.com/filter/

可以为过滤器做同样的选择,然后决定是否应根据您选择的过滤器是每周,每月或每年来显示。

+0

我澄清了我在问题中需要的内容。我需要能够从“上周”,“上个月”和“去年”获取独立于实际排序的数据。我发布的排序代码只是获取数据的框架...所以你仍然可能是正确的,但我不知道如何过滤任何东西到过去的一周,一个月或一年。 – mdance 2012-04-02 19:16:05

相关问题