Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JSON到jQuery/JavaScript日期格式问题_Javascript_Json_Jquery_Date - Fatal编程技术网

JSON到jQuery/JavaScript日期格式问题

JSON到jQuery/JavaScript日期格式问题,javascript,json,jquery,date,Javascript,Json,Jquery,Date,我通过JSON以以下格式从服务器返回日期数据 /Date(1139443200000)/ 如果我尝试使用以下代码段在web浏览器上显示此内容: success: function( rows ) { if( rows.d[0] ) { $.each( rows.d, function( index, row ) { $("div").append( row.OpenDate ); 屏幕上显示的日期如下所示: /Date(113944320000

我通过JSON以以下格式从服务器返回日期数据

/Date(1139443200000)/
如果我尝试使用以下代码段在web浏览器上显示此内容:

success: function( rows ) {
    if( rows.d[0] ) {
        $.each( rows.d, function( index, row ) {
            $("div").append( row.OpenDate );
屏幕上显示的日期如下所示:

/Date(1139443200000)/
row.OpenDate.format("dd-mm-yy"); 如何将其格式化为这样显示

09-02-2006


您可以将其用作日期格式的参考

var now=新日期()


您可以将其用作日期格式的参考

var now=新日期()

这可以帮助您:

  var dateString = 1139443200000;   
    var myDate = new Date(dateString);

    document.write("Day of Weak: "+(myDate.getDay()+1));
    document.write("<br>");
    document.write("Month : " + (myDate.getMonth()+1));
    document.write("<br>");
    document.write("Year : " + myDate.getFullYear()); 
这可以帮助您:

  var dateString = 1139443200000;   
    var myDate = new Date(dateString);

    document.write("Day of Weak: "+(myDate.getDay()+1));
    document.write("<br>");
    document.write("Month : " + (myDate.getMonth()+1));
    document.write("<br>");
    document.write("Year : " + myDate.getFullYear()); 

我想您需要手动解析序列化的日期字符串,例如使用正则表达式:

var match = string.match(/(\d+)-(\d+)-(\d+)T(\d+):(\d+):(\d+)/);
var output = match[3] + "-" + match[2] + "-" + match[1] + " - " + match[4] + ":" + match[5];

我想您需要手动解析序列化的日期字符串,例如使用正则表达式:

var match = string.match(/(\d+)-(\d+)-(\d+)T(\d+):(\d+):(\d+)/);
var output = match[3] + "-" + match[2] + "-" + match[1] + " - " + match[4] + ":" + match[5];

按如下方式设置日期格式:

/Date(1139443200000)/
row.OpenDate.format("dd-mm-yy"); row.OpenDate.format(“dd-mm-yy”); 以及:

row.OpenDate.format(“dd-mm-yy-hh:mm”);
按如下方式设置日期格式:

/Date(1139443200000)/
row.OpenDate.format("dd-mm-yy"); row.OpenDate.format(“dd-mm-yy”); 以及:

row.OpenDate.format(“dd-mm-yy-hh:mm”); 一种通用的可重用方法 我编写了一个jQuery扩展(不是插件),它可以在执行
$.parseJSON
时将Asp.net日期字符串(以及ISO日期字符串)自动转换为实际的Javascript实例。然后,您可以使用javascript日期执行任何您喜欢的操作

一种通用的可重用方法 我编写了一个jQuery扩展(不是插件),它可以在执行
$.parseJSON
时将Asp.net日期字符串(以及ISO日期字符串)自动转换为实际的Javascript实例。然后,您可以使用javascript日期执行任何您喜欢的操作


恕我直言,我敢肯定你对JSON中日期的理解是错误的。如果您在调试器中查看为调用返回的数据,我希望您会发现它是这样的:
OpenDate:“/Date(1139443200000)/”
。这是在JSON文本中发送日期的一种相当常见的方式,因为JSON(令人费解)没有日期的概念。@T.J:我不知道,日期在任何编码中都是一场噩梦,所以没有日期的规范要简单得多。最好只传递自历元起的秒数,因为它是最不含糊的。@T.J.Crowder,你说得对,数据是
“OpenDate”:“\/Date(1139443200000)\/”
,即使在JSON中也是如此。那么我该如何设置格式以按要求显示呢?@PhilH:我可能不该说“难以理解”。:-)我确实理解他为什么不这么做:他想要的是JavaScript文字符号的子集,而JavaScript文字符号当时唯一的日期处理方式是通过
新日期(数字)
,其中,数字为UTC纪元后的毫秒数(也可以是
新日期(年[,月[,…])
)。这可能是语言太具体了。这太糟糕了,通过定义一个简单解析的ISO-8601子集(值以UTC为单位),可以避免很多麻烦。请参阅本文,了解最简单的答案,我敢肯定,您对JSON中日期的外观是错误的。如果您在调试器中查看为调用返回的数据,我希望您会发现它是这样的:
OpenDate:“/Date(1139443200000)/”
。这是在JSON文本中发送日期的一种相当常见的方式,因为JSON(令人费解)没有日期的概念。@T.J:我不知道,日期在任何编码中都是一场噩梦,所以没有日期的规范要简单得多。最好只传递自历元起的秒数,因为它是最不含糊的。@T.J.Crowder,你说得对,数据是
“OpenDate”:“\/Date(1139443200000)\/”
,即使在JSON中也是如此。那么我该如何设置格式以按要求显示呢?@PhilH:我可能不该说“难以理解”。:-)我确实理解他为什么不这么做:他想要的是JavaScript文字符号的子集,而JavaScript文字符号当时唯一的日期处理方式是通过
新日期(数字)
,其中,数字为UTC纪元后的毫秒数(也可以是
新日期(年[,月[,…])
)。这可能是语言太具体了。这太糟糕了,通过定义一个简单解析的ISO-8601子集(值以UTC为单位),可以避免很多麻烦。有关最简单的答案,请参阅本帖。本帖展示了从字符串获取日期对象的最简单方法。这篇文章展示了从字符串中获取日期对象的最简单方法。