无法在 jqgrid 中使用时间戳格式解析日期

unable to parse date with timestamp format in jqgrid

我将日期对象作为 JSON 字符串获取,如下所示。 2019-03-12T02:39:38.197+0000 因为我已经在 J​​qgrid 中尝试了所有可能的格式选项,所以没有给出确切的时间。所以我使用了自己的格式化程序。

 function dateFormatter (cellvalue, options, rowObject)
  {
    var new_format_value='';
    var date = new Date(cellvalue);
     var hours = date.getHours();
      var minutes = date.getMinutes();
      var ampm = Number(hours) >= 12 ? 'PM' : 'AM';
      hours = Number(hours) % 12;
      hours = hours ? hours : 12; // the hour '0' should be '12'
      minutes = Number(minutes) < 10 ? '0'+ Number(minutes) : Number(minutes);
      var strTime = hours + ':' + minutes + ' ' + ampm;
      new_format_value=Number(date.getMonth())+1 + "/" + date.getDate() + "/" + date.getFullYear() + " " + strTime
      return new_format_value;
   }

这种方式以某种方式完全按预期工作,但是当他们在 IE10, IE11 中访问时,我在控制台中收到 Invalid date 错误。

有人可以帮助我吗?

您可以使用 momentjs 并使用自定义格式格式化日期

更多格式在 https://devhints.io/datetime

var date = moment('2019-03-12T02:39:38.197+0000');
console.log(date.format('MM-DD-YYYY hh:mm A'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>