【问题标题】:Converting JSON Date using Javascript使用 Javascript 转换 JSON 日期
【发布时间】:2017-02-06 15:03:02
【问题描述】:

在 SQL Server 数据库中,日期显示为 06-Feb-17 7:42:14 PM。 但是在 Jquery DataTable 中,这个日期显示为 /Date(1486388669090)/

如果我想完全按照 06-Feb-17 7:42:14 PM 格式和 "dd/mm/yy" 显示日期,我必须做什么> 格式??

这是我的代码:

$(document).ready(function () {
            $('#myTable').DataTable({

                "ajax": {
                    "url": "/Employees/LoadData",
                    "type": "GET",
                    "datatype": "json"
                },
                "columns" : [
                        { "data": "EmployeeName", "autoWidth": true },
                        { "data": "Department", "autoWidth": true },
                        { "data": "Age", "autoWidth": true },
                        { "data": "Gender", "autoWidth": true },
                        {
                            "data": "CreatedOn",// This is my date

                        }

                    ]
            });
 });

我们将不胜感激任何适当的帮助。谢谢!

【问题讨论】:

    标签: javascript jquery sql-server json datatables


    【解决方案1】:

    以“dd/mm/yyyy”格式显示 Json 日期:

        "columns" : [
                     { "data": "EmployeeName", "autoWidth": true },
                     { "data": "Department", "autoWidth": true },
                     { "data": "Age", "autoWidth": true },
                     { "data": "Gender", "autoWidth": true },
                     {
                       "data": "CreatedOn",
                       "render": function(data) {
                                    var dateString = data.substr(6);
                                    var currentTime = new Date(parseInt(dateString));
                                    var month = currentTime.getMonth() + 1;
                                    var day = currentTime.getDate();
                                    var year = currentTime.getFullYear();
    
                                    return (day.toString().length > 1 ? day : "0" + day) +
                                    "/" +
                                    (month.toString().length > 1 ? month : "0" + month) +
                                    "/" +
                                    year + " " + time;
    
                                }
    
                      }
    
        ]
    

    日期将显示为:06/02/2017

    将 Json 日期完全显示为“06-Feb-17 7:42:14 PM”格式:

    "columns" : [
                         { "data": "EmployeeName", "autoWidth": true },
                         { "data": "Department", "autoWidth": true },
                         { "data": "Age", "autoWidth": true },
                         { "data": "Gender", "autoWidth": true },
                         {
                           "data": "CreatedOn",
                           "render": function(data) {
                                    var dateString = data.substr(6);
                                    var currentTime = new Date(parseInt(dateString));
                                    var month = currentTime.getMonth() + 1;
                                    var day = currentTime.getDate();
                                    var year = currentTime.getFullYear();
                                    var hour = currentTime.getHours();
                                    var minute = currentTime.getMinutes();
                                    var seconds = currentTime.getSeconds();
    
                                    var localStandarHour = hour > 12 ? hour - 12 : hour;
    
                            var time = (localStandarHour.toString().length > 1 ? localStandarHour : "0" + localStandarHour) + ":" + (minute.toString().length > 1 ? minute : "0" + minute) + ":"
                                + (seconds.toString().length > 1 ? seconds : "0" + seconds);
    
    
                                    if (hour > 12 ) {
                                        time = time + " PM";
                                    } else {
                                        time = time + " AM";
                                    }
    
    
                                    return (day.toString().length > 1 ? day : "0" + day) +
                                    "/" +
                                    (month.toString().length > 1 ? month : "0" + month) +
                                    "/" +
                                    year + " " + time;
    
                                }
    
                          }
    
            ]
    

    日期将显示为:06/02/2017 07:42:14 PM

    【讨论】:

      【解决方案2】:

      您需要将日期从纪元时间转换为您想要的时间格式。尝试 Date Object 的 MDN 页面。构造函数可以获取纪元时间,getYear、getMonth 等函数将为您提供日期字符串的部分。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-05-30
        • 1970-01-01
        • 2017-10-12
        • 1970-01-01
        • 1970-01-01
        • 2023-03-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多