javascript - 如何将JSON格式的日期字符串解析成日期格式

标签 javascript jquery asp.net json ajax

我正在做的是,使用 ajax 从数据库中获取数据并将其显示在 html 文本框中以进行更新。下面是我成功获取数据的 Web 方法代码。

[WebMethod]
public static List<Employee> getEmployee()
{
     var slist = new List<Employee>();
     var db = new BLUEPUMPKINEntities();
     slist = db.Employees.ToList();
     return slist;
}

现在,当我从数据库中获取数据时,我得到了格式为 /Date(725828400000)/ 的日期。我在谷歌上搜索有关解析和转换 json 日期字符串格式为 html/javascript 日期的信息,也使用 3rd 方插件,如 moment.js 和 jquery.ui,但没有解决我的问题。同样在这里,我分享了我的代码,我从中以 json 格式从 ajax 获取数据并将其显示在 jquery 数据表上。

$.ajax({
    url: "Employees.aspx/getEmployee",
    data: null,
    contentType: "Application/json; charset=utf-8",
    responseType: "json",
    method: "POST",
    success: function (response) {
        //alert(response.d);

        var jsonObject = response.d;
        var result = jsonObject.map(function (item) {
            //var date = new Date(item.EMP_DOB);
            //var obj = Date.parse(date);
            var result = [];
            result.push('');
            result.push(item.EMP_FNAME);
            result.push(item.EMP_MNAME);
            result.push(item.EMP_LNAME);
            result.push(item.EMP_EMAIL);
            result.push(item.EMP_DOB); //this is my date column in my database from where date is in yyyy/mm/dd format
            result.push(item.EMP_USERNAME);
            result.push(item.EMP_PASSWORD);
            result.push(item.ID);
            return result;
        });
        myTable.rows.add(result); // add to DataTable instance
        myTable.draw();
    },
    error: function (xhr) {
        alert(xhr.status);
    },
    Failure: function (response) {
        alert(response);
    }
});

我想要 mm/dd/yyyy 格式的日期。请帮我解决我的问题。

最佳答案

如果添加依赖没有问题,那么你可以添加moment.js,它会帮助你格式化任何格式的数据 我假设来自服务器的日期格式为 '/Date(725828400000)/'

var d = item.EMP_DOB;
result.push(moment(Number(d.match(/\d+/)[0])).format('MM/DD/YYYY'));

如果你无法添加 moment js 那么你可以做类似的事情

var date = new Date(Number(d.match(/\d+/)[0]));
var day = date.getDate();
day = day = (day < 10) ? ("0" + day) : day;
var month = date.getMonth() + 1);
month = (month < 10) ? ("0" + month) : month;
var dateStr = day + "-" + month + "-" + date.getFullYear();
result.push(dateStr);

关于javascript - 如何将JSON格式的日期字符串解析成日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35253080/

相关文章:

c# - 访问由 JavaScript 编辑的隐藏输入值

javascript - 使用 JavaScript 设置的值不会保留在回发中

asp.net - 为什么没有代码的 ASP.Net 2.0 应用程序在首次运行时需要 2 分钟才能加载?

javascript - chrome 扩展不会在当前窗口中附加文本

javascript - 如何在javascript中等待 meteor 调用响应然后执行其他语句?

javascript - 如何将 html 元素添加到 tampermonkey

javascript - 如何使用 AngularJS 在 Kendo 网格列模板中使用函数

javascript - 如何使用 Angular Js 自动运行 Colorbox

javascript - 捕获 onPaste 并将事件传递给函数 javascript/jQuery

javascript - jquery fullcalendar 控制日期作为服务器日期