1

我有一个从 Javascript 中的日期选择器填充的文本框。日期存储为30-Jan-2013。我想将其转换为日期,以便可以在其他计算中使用它。

我试过了

var date1 = new Date(document.getElementById('textbox').value)

但这会返回Nan

如果我放下new Date零件,例如

var date1 = (document.getElementById('textbox').value

我得到了30-Jan-2013我似乎无法转换的日期?

4

3 回答 3

1

看起来Date.parse不起作用,因为日期选择器正在返回的格式。

您可能希望查看以下线程以解析解决方案或将 datepicker 输出的格式更改为受支持的格式之一。

如何使用 JavaScript 中的格式规范将字符串转换为日期时间?

http://blog.dygraphs.com/2012/03/javascript-and-dates-what-mess.html

有用的解析信息:

http://msdn.microsoft.com/en-us/library/ie/ff743760(v=vs.94).aspx

于 2013-01-30T22:04:39.450 回答
0

我想向您推荐一个简单,易于使用且快速的库[moment.js][1]

moment("30-Jan-2013").format('MMMM Do YYYY, h:mm:ss a');

将返回“2013 年 1 月 30 日,上午 12:00:00”

于 2013-01-30T22:27:29.837 回答
0

希望这对您的问题有用

  var date= document.getElementById('textbox').value.split("-");;
  var date1 = new Date(date[2] + " " + date[1]  + " " + date[0]);
  date1 .toLocaleDateString("en-GB");
于 2016-11-15T09:03:23.303 回答