0

我输入的值具有日期格式,例如dd.mm.yy.

我明白了:

var date1 = $('.main-order-form input[name=start_date]').val();
var date2 = $('.main-order-form input[name=end_date]').val();

并想让他们喜欢yyyy, MM, dd(需要比较他们)

我试试这个,但没有任何改变。

console.log(date1.toString("yyyy, mm, dd"));

1)如何更改日期格式?

2)是否可以计算两个日期之间的周末天数?

4

3 回答 3

1

问题是,当您从输入中读取日期时,您将获得字符串值。使用日期模式对这些调用 toString 将不起作用。正如评论中提到的,您最好使用日期库来实现这一点。

看看date.jsmoment.js

这是使用 date.js 的示例:

var date1 = Date.parse($('.main-order-form input[name=start_date]').val())
date1.toString("yyyy, mm, dd")
于 2013-05-15T15:02:21.960 回答
1

请参阅有关格式化日期的帖子:https ://stackoverflow.com/a/1056730/2033671

要在您的情况下获取日期对象,您可以拆分 val 并创建一个新日期。

var date1 = $('.main-order-form input[name=start_date]').val().split(".");
date1 = new Date(date1[1] + "." + date1[0] + "." + date1[2]);

你的第二个问题,是第二个问题!尝试一些东西,问你什么时候卡住了

于 2013-05-15T15:02:40.890 回答
0

使用纯 Javascript,您必须手动更改格式:

seperatedDateStrings = "dd.mm.yy".split(".");
bla = new Date(
  seperatedDateStrings[2], 
  seperatedDateStrings[1],
  seperatedDateStrings[0]
);
newDateString = bla.getFullYear() + ", " + bla.getMonth() + ", " bla.getDate();

我不知道是否存在为您工作的 jquery 插件。

于 2013-05-15T14:58:37.340 回答