.NET Core MVC中jQuery datetimepicker日期时间选择异常求助
解决方案:实现日期+15分钟间隔时间选择功能
一、修正依赖与HTML结构
首先确认项目中已正确引入moment.js(datetimepicker依赖此库处理日期时间)、datetimepicker的CSS和JS文件。调整HTML结构,确保图标能正确触发选择器:
<div class="col-xs-6 col-sm-6 col-md-6 mt-15"> <label>Start Date</label> <div class="form-group"> <div class='input-group date' id="datetimepicker-container"> <input type='text' class="form-control" autocomplete="off" id="dtpstr" /> <span class="input-group-addon datapicker-icon"> <i class="fa fa-calendar" aria-hidden="true"></i> </span> </div> </div> </div>
二、正确配置datetimepicker
使用以下JS配置,实现日期+15分钟间隔时间选择,并解决所有异常:
$(document).ready(function () { $('#datetimepicker-container').datetimepicker({ format: 'DD/MM/YYYY HH:mm', // 日期+24小时制时间,需12小时制则用'DD/MM/YYYY hh:mm A' useCurrent: true, // 初始值设为当前时间(可按需调整) stepping: 15, // 设置时间间隔为15分钟 minDate: '1900-01-01', // 自定义最小年份范围 maxDate: '2100-12-31', // 自定义最大年份范围 sideBySide: true, // 日期与时间选择器并排显示,优化操作体验 showClear: true, // 显示清除内容按钮 showClose: true // 显示关闭选择器按钮 }); });
三、异常问题的修复逻辑
- 异常1(format为'LT'无法选时间):
LT仅对应时间格式,但需确保moment.js已正确加载,且配置未禁用时间选择。上述配置通过包含时间格式的format参数+stepping设置,可正常选择时间。 - 异常2(format为'DD/MM/YYYY'无法调出日期选择器):原DOM中图标未绑定到input-group的触发区域,调整为
input-group-addon后可正确触发;默认配置已启用日期选择,若仍有问题可检查插件依赖是否完整。 - 异常3(format为'DD/MM/YYYY, HH:MM'无正常功能):moment.js的分钟格式为小写
mm(大写MM代表月份),且格式字符串中逗号后需留空格,修正为DD/MM/YYYY HH:mm即可正常解析。 - 异常4(年份范围受限):datetimepicker默认年份范围为当前年份前后10年左右,通过
minDate和maxDate可自定义任意年份范围,解决手动输入后范围异常的问题。
内容的提问来源于stack exchange,提问作者joseph thomas
相关产品推荐
相关产品推荐

