gpt4 book ai didi

jQuery UI Datepicker 使用 onChangeMonthYear 更新日期

转载 作者:行者123 更新时间:2023-12-03 21:54:36 25 4
gpt4 key购买 nike

我有很多客户提示当他们更改 JQuery Datepicker 上的日期时,它不会更新日期...这是因为他们更改了月份/年份并期望它更新日期而不需要更新日期。选择一个。

所以我想我应该帮助他们并使用 onChangeMonthYear() 函数自动更新他们的日期。

我的代码如下。当我更改月份或年份时,它会将我带到 2017 年或 1987 年......我不明白出了什么问题。我错过了什么吗?

$('#member_birthday_full').datepicker({ 
altField: '#member_birthday',
altFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: true,
dateFormat: 'DD, d MM yy',
showAnim: 'slideDown',
yearRange: '-125:+0',
onChangeMonthYear:function(y, m, i){
var d = i.selectedDay + '';
if (d.length < 2)
d = '0' + d;
var m = m + '';
if (m.length < 2)
m = '0' + m;
$(this).datepicker( "setDate", y + '-' + m + '-' + d );
}
});​

http://jsfiddle.net/3YQZV/

最佳答案

最简单的解决方案(请参阅 demo )是使用 Date 对象设置新日期:

onChangeMonthYear:function(y, m, i){                                
var d = i.selectedDay;
$(this).datepicker('setDate', new Date(y, m - 1, d));
}
<小时/>

来自fine manual :

setDate(date)
[...]
date
Type: String or Date
The new date.

但是您正在 altFormat 中设置新日期。然后,日期选择器会尽力使用 DD, d MM yy 格式解析 yy-mm-dd 日期,最终您会在 1887 中感到茫然和困惑,想知道在哪里你的德罗宁是。

您还需要决定,如果他们试图从 1 月 31 日移至 2 月,您将采取什么措施。您可能想要前往 2 月 28 日(闰年为 29 日)。如果你从 1 月 29 日、1 月 30 日、5 月 31 日开始……再向前推进一个月,也会出现类似的问题;如果您从 6 月 30 日开始并尝试回到一个月,则会出现略有不同的问题。我将把它作为练习留给读者。

关于jQuery UI Datepicker 使用 onChangeMonthYear 更新日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10393332/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com