jQuery 日期选择器没有按预期工作

jQuery datepicker dosen't work as excepted

我需要我的日期输入为 dd/MM/yyyy,但是当我使用此代码时:

$('#DateTime').datepicker({ dateFormat: 'dd/MM/yyyy' });

日期显示如下:28/December/20162016。 有什么想法吗?

更新: 它现在可以使用这种格式 dd/mm/yy。但问题是,当我传递 17/12/2016 这样的日期时,服务器会说:(它变为空)

The value '17/12/2016' is not valid for DateTime.

PS:我正在使用 ASP.NET MVC,我的 属性 是:

[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime? DateTime { get; set; }

你需要小写 'MM':

$('#DateTime').datepicker({ dateFormat: 'dd/mm/yyyy' });

根据日期选择器文档:

mm - month of year (two digit)

M - month name short

MM - month name long

看看: http://api.jqueryui.com/datepicker/#option-dateFormat

MM 是您想要的月份(十二月)的名称 mm - 月份的编号 (12)。

plus - yy 足以得到年份,你写了两次 (yyyy) 所以你得到了两次:$('#DateTime').datepicker({ dateFormat: 'dd/mm/yy' });

也看看这个: https://jqueryui.com/resources/demos/datepicker/date-formats.html

编辑

dd/mm/yy 不是系统的有效日期(我知道这很糟糕)我主要使用 php 但 yy-mm-dd 适用于我知道的所有系统,所以你应该尝试 $('#DateTime').datepicker({ dateFormat: 'yy-mm-dd' });

如果您希望它显示在 dd/mm/yy 中但发布在 yy-mm-dd 中,您需要使用日期选择器的 altField 和 altFormat 选项:http://api.jqueryui.com/datepicker/#option-altField