You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pickadate插件下拉日历日期显示异常技术求助

问题排查与修复

核心错误:日期格式转换顺序颠倒

你的unixDateTOString函数返回的日期格式是日/月/年,但pickadate配置的格式是mm/dd/yyyy(月/日/年),这导致日期解析时出现混乱:

// 原函数返回格式:date/month/year
var formattedTime = date + '/' + month + '/' + year;

比如选择2023年12月27日,函数返回27/12/2023,而pickadate会将第一个数值当成月份,27超出12的范围,会被自动转换为下一年的3月(27-2*12=3),最终显示错误日期。

修复方案

修改unixDateTOString函数,调整月份和日期的顺序,返回mm/dd/yyyy格式,同时补零确保两位格式匹配picker配置:

function unixDateTOString(unix_timestamp) {
    var dateObj = new Date(unix_timestamp);
    var year = dateObj.getFullYear();
    var month = String(dateObj.getMonth() + 1).padStart(2, '0');
    var date = String(dateObj.getDate()).padStart(2, '0');
    var formattedTime = month + '/' + date + '/' + year;
    return formattedTime;
}

其他优化点

  1. HTML输入框重复class属性:输入框写了两次class属性,属于无效语法,需合并:
<!-- 修正前 -->
<input type="text" class="form-control" class="igameDate" id="gameDate2" ...>
<!-- 修正后 -->
<input type="text" class="form-control igameDate" id="gameDate2" ...>
  1. 重复配置项清理:初始化picker时重复写了selectYears: true和selectMonths: true,可删除重复项简化代码。
  2. 初始化值格式校验:确保gameDateJs和gameDateJsAway的格式为mm/dd/yyyy,避免picker初始化时解析错误。

内容的提问来源于stack exchange,提问作者GKR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 05:07:03