JQuery返回Json日期格式的問題

用JQuery Ajax返回一個Entity的Json數據時,如果Entity的屬性中有日期格式,那返回來的是一串字符串,如下圖所示:

 

在網上找了很久也沒有找到一個好的解決方案,最後自己寫一個javascrip Function 特此記錄,以備後用:

UPDATE:可以用Json.net中IsoDateTimeConverter

例如:

   Product pro = new Product();
            pro.PNo = "001";
            pro.PName ="Apple";
            pro.PDate =new DateTime(2011, 12, 28);
            pro.Price = 3.99M;


            IsoDateTimeConverter timeConverter = new IsoDateTimeConverter();//这里使用自定义日期格式,默认是ISO8601格式         
              timeConverter.DateTimeFormat ="yyyy-MM-dd";//设置时间格式 

            string json = JsonConvert.SerializeObject(pro,Formatting.Indented,timeConverter);//转换序列化的对象
              //string json = JsonConvert.SerializeObject(pro, new IsoDateTimeConverter());//默认是ISO8601格式
             context.Response.Write(json);}

输出结果:"{\r\n  \"PNo\": \"001\",\r\n  \"PName\": \"Apple\",\r\n  \"PDate\": \"2011-12-28\",\r\n  \"Price\": 3.99\r\n}"

調用前的圖像問題:

 

代码
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--> 1  function  ChangeDateFormat(cellval)
2  {
3       var  date  =   new  Date(parseInt(cellval.replace( " /Date( " "" ).replace( " )/ " "" ),  10 ));
4       var  month  =  date.getMonth()  +   1   <   10   ?   " 0 "   +  (date.getMonth()  +   1 ) : date.getMonth()  +   1 ;
5       var  currentDate  =  date.getDate()  <   10   ?   " 0 "   +  date.getDate() : date.getDate();
6       return  date.getFullYear()  +   " - "   +  month  +   " - "   +  currentDate;
7  }

以下是調用代碼:memberObj為返回來的JSON對象

代码
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->  1  function  DataBindToMemberDetailDialog(memberObj)
 2  {
 3      $( " #span_memberName " ).text(memberObj.UserName);
 4      $( " #span_sex " ).text(memberObj.SexText);
 5      $( " #span_firstNameAndLastName " ).text(memberObj.LastName  +   "   "   +  memberObj.FirstName);
 6      $( " #span_birthday " ).text(ChangeDateFormat(memberObj.Birthday));
 7      $( " #span_email " ).text(memberObj.Email);
 8      $( " #span_memberRate " ).text( " 此處還要修改 " );
 9      $( " #span_loginCount " ).text(memberObj.LoginCount);
10      $( " #span_downloadCount " ).text(memberObj.DownloadCouponCount);
11      $( " #span_scoreCount " ).text(memberObj.ScoreCount);
12      $( " #span_createDate " ).text(memberObj.CreateDate);
13  }

執行後的效果:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值