如何在Razor中为Bootstrap datepicker设置默认日期?
Bootstrap Datepicker 设置默认日期解决方案
有两种常用且易落地的实现方式:
方案1:后端ViewModel初始化赋值(推荐)
借助ASP.NET MVC强类型绑定特性,直接在对应的视图模型构造函数中给日期字段赋默认值,前端不需要做任何额外修改,datepicker会自动读取输入框的value值作为默认日期。
示例代码:
public class 你的视图模型类名 { public DateTime StartDate { get; set; } public DateTime EndDate { get; set; } // 构造函数中设置默认值 public 你的视图模型类名() { // 示例:开始日期默认当天,结束日期默认7天后 StartDate = DateTime.Now.Date; EndDate = DateTime.Now.Date.AddDays(7); } }
方案2:前端JS初始化时设置默认值
如果不想修改后端代码,可以在datepicker初始化逻辑中调用setDate方法赋值,示例代码:
// 先初始化datepicker基础配置 $('.datepicker').datepicker({ format: 'yyyy-mm-dd', // 和后端保持一致的日期格式即可 autoclose: true }); // 单独给两个日期输入框设置默认值 const today = new Date(); const weekLater = new Date(today.getTime() + 7 * 24 * 60 * 60 * 1000); $('input[name="StartDate"]').datepicker('setDate', today); $('input[name="EndDate"]').datepicker('setDate', weekLater);
注意事项
- 前后端日期格式要保持一致,避免出现表单提交时绑定失败的问题
- 如果你使用的是带时间选择的
bootstrap-datetimepicker插件,参数格式和方法名需要对应插件要求调整
内容的提问来源于stack exchange,提问作者Steve Cross
相关产品推荐
相关产品推荐

