0
var dateStart = $('input[id=orderdate-0]').val();
    var timeStart = $('input[id=ordertime-0]').val();
    var dateEnd = $('input[id=orderdate-1]').val();
    var timeEnd = $('input[id=orderime-1]').val();

    var startDate = new Date(dateStart + " " + timeStart);
    var endDate = new Date(dateEnd + " " + timeEnd);
     startDate.getTime();
    alert(startDate);

我正在尝试将“2013-12-11”的 dateStart 和“11:00”的 timeStart 结合起来,并尝试从中生成日期。但我会收到无效日期等警报。代码有什么问题吗?

4

3 回答 3

1

构造Date函数对它接受的日期字符串格式非常特别。

例子:

  • 1995 年 12 月 25 日
  • 1995 年 8 月 9 日,星期三 00:00:00
  • 2011-10-10T14:48:00 (JavaScript 1.8.5+)

还有另一个构造函数接收日期的各个组成部分。如果您将日期字符串分解为组件,则可以使用以下内容:

new Date(year, month, day, hour, minute);
于 2013-02-20T10:02:57.270 回答
0

使用 moment JS 插件http://momentjs.com/

它是一个用于解析、验证、操作和格式化日期的日期库。

于 2013-02-20T10:02:23.460 回答
-1

这不是该函数的有效格式parse,您可以改用它:

var arr = dateStart.split('-');
var timeArr = timeStart.split(':');
new Date(arr[0], arr[1] -1, arr[2], timeArr[0] -1, timeArr[1] -1);

这个

现场演示

于 2013-02-20T10:03:09.183 回答