我将用jQuery首次尝试Ajax。我正在将数据放到页面上,但对于Date数据类型返回的JSON数据,我遇到了一些问题。基本上,我得到的字符串是这样的:

/Date(1224043200000)/

从一个对JSON完全陌生的人那里——我如何将其格式化为短日期格式?这应该在jQuery代码中的某个地方处理吗?我使用$.datepicker.formatDate()尝试了jQuery.UI.datepicker插件,但没有成功。

仅供参考:以下是我使用以下答案组合得出的解决方案:

function getMismatch(id) {
  $.getJSON("Main.aspx?Callback=GetMismatch",
    { MismatchId: id },

    function (result) {
      $("#AuthMerchId").text(result.AuthorizationMerchantId);
      $("#SttlMerchId").text(result.SettlementMerchantId);
      $("#CreateDate").text(formatJSONDate(Date(result.AppendDts)));
      $("#ExpireDate").text(formatJSONDate(Date(result.ExpiresDts)));
      $("#LastUpdate").text(formatJSONDate(Date(result.LastUpdateDts)));
      $("#LastUpdatedBy").text(result.LastUpdateNt);
      $("#ProcessIn").text(result.ProcessIn);
    }
  );

  return false;
}

function formatJSONDate(jsonDate) {
  var newDate = dateFormat(jsonDate, "mm/dd/yyyy");
  return newDate;
}

这个解决方案从回调方法中获取了我的对象,并使用日期格式库在页面上正确显示了日期。


当前回答

如果在JavaScript中,

var thedate = new Date(1224043200000);
alert(thedate);

您将看到这是正确的日期,您可以在JavaScript代码中的任何地方使用它与任何框架。

其他回答

JSON可能会返回某种类型的对象(嗯,是其字符串表示)。

"{ myDate : Date(1224043200000) }"

使用jQuery,您可以通过以下方式访问数据对象:

$.get(
    "myJSONFile.php",
    function (data) {
        // data.myDate will be a date object.

        // to show in a short date format (eg: dd/mm/yyyy)
        alert (
            data.myDate.getDate() + "/"
            + (data.myDate.getMonth() + 1) + "/"
            + data.myDate.getFullYear()
        ); // alerts: "15/10/2008"
    }
);

如果.NET返回。。。

return DateTime.Now.ToString("u"); //"2013-09-17 15:18:53Z"

然后在JavaScript中。。。

var x = new Date("2013-09-17 15:18:53Z");

在以下代码中。我有

1.从日期字符串中检索到时间戳。

2.并将其解析为Int

3.最终使用它创建了日期。

var dateString=“/Date(1224043200000)/”;var seconds=parseInt(dateString.replace(/\/Date\(([0-9]+)[^+]\//i,“$1”));var date=新日期(秒);console.log(日期);

在页面中添加jQuery UI插件:

function DateFormate(dateConvert) {
    return $.datepicker.formatDate("dd/MM/yyyy", eval('new ' + dateConvert.slice(1, -1)));
};
var newDate = dateFormat(jsonDate, "mm/dd/yyyy"); 

是否还有其他不使用jQuery库的选项?