【问题标题】:Date value is displaying in wrong format when using jquery And Json使用 jquery 和 Json 时,日期值以错误的格式显示
【发布时间】:2013-12-28 23:10:32
【问题描述】:

我从 Sql 服务器返回创建的日期值,并使用 jquery 将其放置在 div 中。但我得到的值是“/Date(1385716781000)/”,但我需要它为 dd/mm/yy 格式。

返回时我的模型中的值为“2013-11-29 14:03:33.160”,但在调试时我发现它以上述格式显示。

$.getJSON( '@Url.Action("GetTicketdetails")',  { TicketID: ticketid }, function (items) {
  debugger;
  for (var i = 0; i < items.length; i++) {
    var s = s + '<li >' + '<div class="divInsidediv" >' + items[i].CreatedDate + '</div>';
  }
  $('#divA').html(s);
});

我做错了什么??

【问题讨论】:

  • 我确实使用了 items[i].CreatedDate.toString("dd/mm/yy") 但它发现了一个错误

标签: jquery asp.net json datetime


【解决方案1】:

您必须像这样将日期转换为 json 格式

使用该函数转换Json Date日期

function renderDate(value) {
  if (value == '' || value == undefined) {
    return '';
  }
  else {
    getDate = new Date(parseInt(value.substr(6)));
  }
  //You can - or / as what ever you want
  return (
    getDate.getDate()  + "/" + (getDate.getMonth() + 1) + "/" + getDate.getFullYear()
  );
}

你的函数会这样转换

$.getJSON('@Url.Action("GetTicketdetails")', { TicketID: ticketid }, function (items){
  debugger;
  for (var i = 0; i < items.length; i++) {
    var s = s + '<li>' + '<div class="divInsidediv" >' +
      renderDate(items[i].CreatedDate) + '</div>';
  }
  $('#divA').html(s);
});

【讨论】:

    【解决方案2】:

    我认为你得到了UNIX timestamp,你可以使用date.format() like,

    new Date(items[i].CreatedDate  * 1000).format('d/m/y');
    

    在你的代码中试试这个,

    var  s ='';// initialize s here, once
    for (var i = 0; i < items.length; i++) {
       d=new Date(items[i].CreatedDate  * 1000).format('d/m/y');
       s += '<li><div class="divInsidediv">' + d +  '</li></div>';  
    }
    

    更新或简单尝试,

    var  s ='';// initialize s here, once
    for (var i = 0; i < items.length; i++) {
       d=Date(items[i].CreatedDate); // let you get 1385716781000 in items[i].CreatedDate
       nd=(d.getMonth()+1)+'/'+d.getDay()+'/'+d.getFullYear();// new date
       s += '<li><div class="divInsidediv">' + nd +  '</li></div>';  
    }
    

    参考thisConvert unix timestamp to javascript date Object

    【讨论】:

    • 不起作用:(错误显示为对象[对象日期]没有方法格式。用getDate替换格式但输出为NaN
    • 您是否为format()添加了来自jacwright.com/projects/javascript/date_format的代码
    • 我添加了格式代码,现在 m 输出为“Nan/Nan/Nan”
    • 第二个链接帮助我了解更多。谢谢 !! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多