时间格式转换 json 转 datetime js c#

情景描述:使用C#在后台中传递时间到ajax中,因为是一个list<model>就直接用了Json 作为载体,但是在js中获得到的时间是var time='/Date(***************)/';

     初次判断为时间戳,直接转换 new Date(time); 失败,仔细看才发现是因为json时间转化的问题

一:底层方法 

    [HttpPost]
        public JsonResult AjaxReviewForBranchDetail(int PageIndex, int BranchID)
        {
            PageIndex++;
            var reviewlist = this.WebSiteService.GetReviewList(new ReviewRequest() { BranchID = BranchID, PageIndex = PageIndex }, true);
            return Json(new { reviews = reviewlist.Select(r => new { r.Content, r.CreateDate, r.CompositeScore, r.UserName }) });

        }

二:js 接收

//点评数据
function getmorereview() {
    $.ajax({
        url: "AjaxReviewForBranchDetail",
        type: "post",
        data: { PageIndex: $("#reviewpageindex").val(), BranchID: $("#HidBranchID").val() },
        success: function (date) {
            var html = "";
            if (date != null) {
                if (date.reviews.length > 0) {

                    for (var i = 0; i < date.reviews.length; i++) {
                     
                        html += "<dl class=\"commentdetails\">";
                        html += "<div class=\"left imgb\">";
                        html += "<i class=\"icon cusimg\"></i>";
                        html += "</div>";
                        html + "<div class=\"left commentcontent\">";
                        html += "<div>";
                        html += "<span class=\"username\">" + date.reviews[i].UserName + "</span>";
                        html += "<div class=\"icon star\" style=\"display: inline-block;\">";
                        html += "<i class=\"icon progress5\"></i>";
                        html += "</div>";
                        html += "<span class=\"scores\">" + date.reviews[i].CompositeScore + "分</span> <span class=\"time\">" + getLocalTime(date.reviews[i].CreateDate) + "</span>";
                        html += "</div>";
                        html += "<p class=\"cont\">";
                        html += date.reviews[i].Content;
                        html += "</p>";
                        html += "</div>";
                        html += "</dl>";
                    }
                    $("#reviewpageindex").val(parseInt($("#reviewpageindex").val()) + 1);
                }

            } else {
                html += "<span>亲,这回真没了!</span>";
            }
            $("#reviewdiv").append(html);
        }
    })
}

三:json转datetime 

//时间json转datetime
function getLocalTime(dateText) {
    dateText = dateText.replace("/Date(", "").replace(")/", "").substring(0, 10);
    /*
    需要注意的是:
    不要把字符串中的Date(这样的字符也传进去,要先处理一下,这样很方便就能处理的
    可以使用replace方法
    如:replace("/Date(","").replace(")/","");
    */
    //返回 2014年5月26日 下午12:00
    //return new Date(parseInt(dateText) * 1000).toLocaleString().replace(/:\d{1,2}$/, ' ');
    //返回 2014年5月26日 下午12:0
    //return new Date(parseInt(dateText) * 1000).toLocaleString().substr(0, 17);
    //返回 2014-5-26 12:00:29
    return new Date(parseInt(dateText) * 1000).toLocaleString().substr(0, 12).replace(/年|月/g, "-").replace(/日/g, " ").replace(/上|午/g, " ").replace(/下|午/g, " ");
}

  ps:我要的是年-月-日所以就substr(0,12),这个根据个人需求判定

 

posted @ 2017-03-31 15:31  赵坤坤  阅读(506)  评论(0编辑  收藏  举报