2012-04-02 4 views
0

データをソートするテーブルがあります。今、私は最新のものから古いものに、そしてその逆のものを並べ替えています。今、前週または前月または前年のすべてのデータを取得するように並べ替える必要があります。jQueryまたはJavaScriptで1週間、1ヶ月、1年の日付を並べ替えます。

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

これを変更して、週、月、または年ごとに並べ替えることはできますか?

EDIT 申し訳ありませんが、間違ったコードを貼り付けました。これは更新されたjavascriptです。 いいえ、私はテーブル自体を見せてくれません - それは私が利用できない情報を含んでいます。

EDIT 2 私は明確にする必要があります。私は、テーブルがソートされた後にフィルタリングする必要はありません。過去1週間、1ヶ月、または1年に基づいてデータを選択するオプションは、データを最新のものから古いもの(または古いものから最新のもの)にソートすることもできます。実際の並べ替えとは関係なく、「先週」、「先月」、「前年」のデータを取得する機能が必要です。

編集3 誰もが考えている?

+1

UNIXのタイムスタンプを使用していますか? SQLタイムスタンプ?書式付き文字列ですか? – hohner

+1

テーブルのサンプルを見ることができますか? – Fresheyeball

+0

@Jamie私はちょうどjavascriptの日付オブジェクトです。私はコードを更新しました。 – mdance

答えて

0

あなたは2つの異なることについて話しています。ソート機能は正しいですが、フィルタ機能が必要になりました。

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

あなたはそれはあなたの選択したフィルタは、週、月、または年であるかどうかに基づいて表示するかどうかを決定、その後、フィルタのために同じセレクタを行うことができます。

+0

私は質問に必要なものを明確にしました。実際の並べ替えとは関係なく、「先週」、「先月」、「前年」のデータを取得する機能が必要です。私が投稿したソートコードは、データを取得するためのフレームワークにすぎません...あなたはまだ正しいかもしれませんが、過去1週間、1ヶ月または1年に何かをフィルタリングする方法がわかりません。 – mdance

関連する問題