以下で説明するように、2010-12-07 17:35:04.127のように日付と時刻の両方の部分があるサーバーから文字列として日付を送信しています。私が欲しいのは、データテーブルの列に時間の部分ではなく日付を表示することです。つまり、2010-12-07です。しかし、時間の部分を含む完全な日付で並べ替えを実行することも必要です。したがって、2010-12-07 18:35:04.12に作成された顧客は、dataTable列の2010-12-07 17:35:04.12の上に表示される必要があります。これがdatatableの特定の日付列コードスニペットです
"aoColumns": [ { "mDataProp": "customerCreated","bSearchable": false,
"fnRender": function ( o, val )
{
var javascriptDate = new Date(o.aData["customerCreated"]);
javascriptDate = javascriptDate.getFullYear()+"/"+javascriptDate.getMonth()+"/"+javascriptDate.getDate();
return "<div class= date>"+javascriptDate+"<div>";
}
} ]
私が直面している問題は次のとおりです。-
1)IEおよびMozillaでは、日付はNaN / NaN/NaNとして表示されます。理由がわからない?
2)Chromeでは日付は表示されますが、月は1ずつ減らされて表示されます。javascriptDate.getMonth()が月を1つ減らして返すのはなぜですか。
3)日付部分だけを表示している上記のルートを使用した場合、並べ替えが機能するかどうかわかりませんが、日付部分を含む完全な日付に並べ替えを実行したいですか?
参考までに、bserverSideをfalseとして使用しています。基本的に、サーバーからデータを一度に取得し、クライアント側で並べ替えを行いますか?