用javascritserilization序列化列表或对象后的有时间的列表

来源:互联网 发布:龙江网络客服中心电话 编辑:程序博客网 时间:2024/06/02 09:15

要想将列表中的时间字段正确的获取出来显示,需要转化如下因为数据格式是/Date(1281369600000)/:

 //对单个JavaScriptSerializer序列化的json中日期不能正常显示的问题的解决方案
    ReplaceSingleJsonDateToDate: function(jsonDate) {
        if (jsonDate === null || jsonDate === undefined) {
            return '';
        }
        var dateStr = jsonDate.substring(6, jsonDate.length - 2);
        var d = new Date(parseInt(dateStr));
        return Json.formatDate(d);
    },

 

  //格式化日期成:yyyy-MM-dd
    formatDate: function(date) {
        return date.getFullYear() + '-' + this.formatNum((date.getMonth() + 1)) + '-' + this.formatNum(date.getDate());
    }

将对象序列化后的jSON对象后要想正确显示时间值\/Date(1300118400000)\/,则需要调用如下方法:

//对于使用JavaScriptSerializer序列化的json中日期不能正常显示的问题的解决方案
    ReplaceJsonDateToDate: function(jsonData) {
        jsonData = jsonData.replace(/\\\/Date\(\d+\)\\\//g, function(date) {
            var dateStr = date.substring(7, date.length - 3);
            var d = new Date(parseInt(dateStr));
            return Json.formatDate(d);

        });
        return jsonData;
    }