JQuery UI日期选择器初始值的日期格式问题

14

我需要将日期选择器的初始日期设置为 mm-dd-yyyyy 格式的 03/20/2010。

我已经完成了这个操作。

<input id='datepicker' type='text' value='20/03/2010' />

但我的问题是,当我点击日期选择器字段时,它会用今天的日期突出显示,并且没有选择日期,在选择日期值之后

但是,当我像下面这样更改输入字段时

<input id='datepicker' type='text' value='03/20/2010' />

日期选择器将3月20日作为选定日期,并突出显示当前日期。但所有日期都以'mm-dd-yyyy'格式显示!

我希望以'dd-mm-yyyy'格式显示所有日期。我该如何解决这个问题?

我尝试了下面的一些选项和组合,但没有解决我的问题。

$("#datepicker").datepicker();
$("#datepicker").datepick({dateFormat: 'mm/dd/yyyy'});
$("#datepicker").formatDate('dd/mm/yy');
$('#datepicker').datepicker("setDate", new Date($("#datepicker").val()) );

更新: 很遗憾,我无法直接通过JavaScript设置3月20日的日期值,因为它是动态更改的并且存储在PHP变量中。我需要从输入字段本身获取默认值。


看了你的代码后,我把我的代码改成了$("#datepicker").datepicker();$('#datepicker').datepicker("setDate", new Date($("#datepicker").val()) ); 这样做帮了我很多。 - AEMLoviji
5个回答

20
$('#datepicker').datepicker('option', 'dateFormat', 'dd-mm-yy');

此处所述,年份用y表示2位数字,用yy表示4位数字。


1
某种程度上,只有这段代码对我起作用。这段代码没有任何效果:$( "#datepicker" ).datepicker({ dateFormat: "dd-mm-yy"}); - gkiko

8

您需要结合dateFormatdefaultDate选项:

$("#datepicker").datepicker(
{
    dateFormat: 'mm/dd/yyyy',
    defaultDate: '20/03/2010'
});

然而,指定默认日期有许多不同的方法。我不确定你需要什么,所以你可以参考此处的API


谢谢,但不幸的是我无法直接通过JavaScript设置日期值为3月20日,因为它是动态变化的并且存储在PHP变量中。我需要从输入字段本身获取默认值。 - Mithun Sreedharan
你可以自己从输入中读取这个:defaultDate: $('#datePicker').val() - Matt Ball

0

mm等于分钟而不是月份。
请改用dd/MM/yyyy


0

还要记住,type="date" 会出问题,所以将 type 设置为 text


-5

不准确!!!

$("#datepicker").datepicker(
{
    dateFormat: 'mm/dd/yyyy',
    defaultDate: '20/03/2010'
});

你必须在dateFormat中放置正确的格式:对于你的例子,应该是:dd/mm/yy 有两个错误:
  • 日期和月份颠倒了
  • 年份只有两个'y'而不是四个

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接