gpt4 book ai didi

javascript - 从不带时区的字符串构造 JavaScript 日期(适用于 JqueryUI datepicker)

转载 作者:行者123 更新时间:2023-12-03 06:29:14 25 4
gpt4 key购买 nike

我正在使用 jQueryUI Datepicker 库,我需要为其提供一个动态加载的最小日期日期。

我设置了日期选择器:

$("#thePicker" ).datepicker({
dateFormat: 'yy-mm-dd',
showOtherMonths: true,
changeMonth: true,
changeYear: true,
minDate: new Date('2016-04-28'),
});

其中“2016-04-28”是加载时可能会发生变化的字符串。

由于时区转换,这将最小允许日期设置为 2016 年 4 月 27 日。

当我提供了上面显示的格式的字符串以便没有时区相关时,我应该如何为 minDate 构造这个新日期?

最佳答案

如果日期是字符串并且始终为“YYYY-MM-DD”,我会这样做:

https://fiddle.jshell.net/Twisty/eknxxqvh/

$(function() {
var dString = "2016-04-28";
var yy = parseInt(dString.substring(0, 4));
var mm = parseInt(dString.substring(5, 7)) - 1;
var dd = parseInt(dString.substring(8));
$("#thePicker").datepicker({
dateFormat: 'yy-mm-dd',
showOtherMonths: true,
changeMonth: true,
changeYear: true,
minDate: makeDate("2016-04-28"),
/* Alternate Method 1
minDate: new Date(yy, mm, dd),
/* Alternate Method 2
minDate: new Date(parseInt("2016-04-28".substring(0,4)), parseInt("2016-04-28".substring(5,7))-1, parseInt("2016-04-28".substring(8))),
*/
});

function makeDate(ds) {
var yy = parseInt(ds.substring(0, 4));
var mm = parseInt(ds.substring(5, 7)) - 1;
var dd = parseInt(ds.substring(8));
var d = new Date(yy, mm, dd);
return d;
}
});

根据您在页面中使用此方法的频率,将定义哪种方法最适合您。

关于javascript - 从不带时区的字符串构造 JavaScript 日期(适用于 JqueryUI datepicker),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38514832/

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