无法在 jQuery DatePicker 中使用格式“yyy-dd-mm HH:MM:ss”来保存 MySQL DateTime 字段
Posted
技术标签:
【中文标题】无法在 jQuery DatePicker 中使用格式“yyy-dd-mm HH:MM:ss”来保存 MySQL DateTime 字段【英文标题】:Can't use format "yyy-dd-mm HH:MM:ss" in jQuery DatePicker to Save MySQL DateTime Field 【发布时间】:2021-01-02 16:50:24 【问题描述】:我想从日期选择器选择的日期更改日期格式
如何更改此日期格式
DTSTART: 09/18/2020
DTEND: 09/18/2020
到现在为止
DTSTART:19970714T170000Z
DTEND:19970715T035959Z
我试过了,但我没有得到我想要的
$("#datepicker").datepicker(
dateFormat: 'yyy-dd-mm HH:MM:ss'
);
注意:此日期将用于 php 中的 ics 文件日历中。
我需要做什么来解决这个问题?
【问题讨论】:
嘿,不急,只是想知道我的回答是否有帮助。 你好兄弟没有 嘿,死人,怎么没有帮助?您正在尝试在日期时间字段上使用日期选择器,我解释说这是行不通的。另外,你能解释一下吗?我在网上发布了一个 100% 工作演示:100% Working Demo for Datepicker,以及 Official jQuery UI Documentation 说按照我的描述使用它。你能解释什么不起作用吗?我的意思是,看看你的格式?您将年份列为“YYY”,三个 Y?不知道我的回答对您的多个问题没有帮助。 【参考方案1】:好吧,datepicker 只能处理 dates,而你给它一个包含 HH:MM:ss
的格式参数。它无法设置您的 time,在这种情况下,您需要一个 time-picker。
将格式设置为:yy-mm-dd
。这表示 4 位数的年份、2 位数的月份和 2 位数的日期。
yy - 年份(四位数)
mm - 一年中的月份(两位数)
dd - 日期(两位数)
来源:Official jQuery UI Datepicker Documentation.
基本上,您只需要'yy-mm-dd'
的格式即可为 mysql 正确插入日期值...
$(selector).datepicker(
dateFormat: 'yy-mm-dd',
yearRange: '-100:+2',
changeMonth: true,
changeYear: true,
);
Full, Working Online Demo.
您可以查看的结果:
此外,正如您在上面看到的,这从今天减去 100 年到今天加上 2 年。例如,如果您想显示 1970 到 2025 的日期,yearRange
将是 -50:+5
。
【讨论】:
“你只需要 'yy-mm-dd' 的格式来为 MySQL 正确插入日期值” - 关于那个; mysql 存储为YYYY
etc....而不是其中的 2 个(Y)。
嘿,Funk 40 Niner。实际上,每个Y
代表2 位数字。尝试在这里选择一个日期:Working Demo With My Code 我冒昧地用您的格式制作了一个演示:Non-Working Demo With Your Format -- 输出:20202020-09-08
。
注意Official jQuery Datepicker Docs:yy - year (four digit)
,事实上,“yyyyy”甚至没有作为dateFormat的选项出现。以上是关于无法在 jQuery DatePicker 中使用格式“yyy-dd-mm HH:MM:ss”来保存 MySQL DateTime 字段的主要内容,如果未能解决你的问题,请参考以下文章
使用 jQuery Datepicker 使日期在加载时无法选择
为啥 jQuery Datepicker 无法更改日期格式?
jquery ui datepicker无法添加新的输入字段