【发布时间】:2016-10-22 23:39:48
【问题描述】:
我在网上看到了各种关于这个的话题,但似乎没有什么对我有用。
问题
在我的 MVC 应用程序中,我有一个 Html.TextBoxFor,它由我的模型中的一个属性提供。此类属性可能如下:public DateTime Expiration { get; set; }。一个简单而基本的DateTime 属性。
razer 输入如下所示:
Html.TextBoxFor(x => x.Expiration, new { @class = "datepicker" })
我正在像这样初始化日期选择器:
<script type="text/javascript">
$(document).ready(fucntion(){
$('.datepicker').datepicker({ dateFormat: 'dd/MM/yyyy' });
});
</script>
根据我读过的许多资料,这个设置应该可以工作,但在我的应用程序中却不行。在下图中,您可以清楚地看到我如何选择(格式为 dd/MM/yyyy)5 月 9 日,或者更确切地说是 09/05/2016,但您也可以看到,在文本框是05/09/2016,所以9月5日作为日期格式是MM/dd/yyyy。
额外
我已尝试将Html.EditorFor 与以下模板一起使用:
@model DateTime
@Html.TextBox("", Model.ToString("dd/MM/yyyy"), new { @class = "datepicker" })
与
@model DateTime
@Html.TextBox("", Model.ToString("{0:dd/MM/yyyy}"), new { @class = "datepicker" })
但仍然没有任何效果。我试过直接在@Html.TextBoxFor() 中定义格式,就像这样:Html.TextBoxFor(x => x.Expiration, "{0:dd/MM/yyyy}", new { @class = "datepicker" }),但这也没什么区别。
【问题讨论】:
-
在下图中? - 你还没有包含图片:)
-
我们走了.. 感谢您的关注 :)
-
您使用的是哪个 jquery 插件? (最好的猜测是它必须是
dateFormat: 'dd/mm/yyyy'- 小写mm) -
jquery-2.1.4和jquery-ui-1.10.4。我试过使用小的mm,因为大的是C#,但无济于事 -
如果它的 jquery ui datepicker,那么它需要小写
dd/mm/yyyy一个 2 位数的月份
标签: jquery asp.net-mvc date datetime datepicker