【发布时间】:2016-03-01 00:32:13
【问题描述】:
我想使用引导日期选择器以“dd/MM/yyyy”格式显示日期。 我有以下代码:
@Html.TextBoxFor(model => model.StartDate, "{0:dd/MM/yyyy}", new { @class = "w8em format-y-m-d form-control", @value=Model.StartDate.ToShortDateString("dd/MM/yyyy") })
它显示即“20/10/2015”(2015 年 10 月 20 日)。但是当我点击它打开 datapicker 时,它会选择 2015 年 8 月 10 日(为什么是 8 月?我不知道)。如果我只是关闭 datepicker(没有选择内部的任何内容) - 文本框值将更改为 '08/10/2015'。如果我没有触摸页面上的任何内容,只需单击表单上的“保存”,StartDate 验证器会显示“开始日期不正确”并自动打开日期选择器。为什么如此奇怪的行为以及如何强制将格式更改为 dd/MM/yyyy? 浏览器是Chrome,乌克兰最新版本,日期选择器显示为英文...
更新:
我已经添加了
$('#@Html.IdFor(p=>p.StartDate)').datepicker({ dateFormat: 'dd/mm/yyyy' });
不工作
【问题讨论】:
-
你附加插件的时候配置好格式了吗?显示脚本。并且您不应该尝试覆盖
value属性(删除@value=Model.StartDate.....) -
$('#@Html.IdFor(p=>p.StartDate)').datepicker({ dateFormat: 'dd/mm/yyyy' }); - 不工作
-
对我来说很好 - 参考fiddle
-
是的,这是我的代码中的错误:应该是“格式”,而不是“日期格式”
标签: validation date datepicker asp.net-mvc-5 data-annotations